2013-03-04 67 views
0

我已經測試所有滾動到DIV ID的方式,但不工作,我知道是什麼問題,但我不知道是什麼,這是我的jQuery腳本滾動到一個div後jQuery的形式提交

$("#sub").click(function() { 

$("#myForm").validate({ 
     rules: { 
     page: { 
      required: true, 
      url: true 
     }, 
     link: { 
      required: true, 
      url: true 
     } 
     }, 
     submitHandler: function(form) { 
     $.post($("#myForm").attr("action"), $("#myForm :input").serializeArray(), 
     function(info){ 
      $("#result").html(info); 
     }); 

     clearInput(); 

     $("#myForm").submit(function() { 
      return false; 
     }); 
        } 
    }); 
}); 

function clearInput() { 
    $('html, body').animate({ 
     scrollTop: $("#result").offset().top 
    }, 2000); 
} 

我不知道是否有東西混合的東西,但jQuery不滾動我測試scrolltop()函數在一個新的PHP文件,並正常工作,但是當我在這個文件上使用它不。

UPDATE:

感謝您的幫助netblognet我已經得到了它,我有這樣的:

$("#sub").click(function() { 

    $("#myForm").validate({ 
      rules: { 
      page: { 
       required: true, 
       url: true 
      }, 
      link: { 
       required: true, 
       url: true 
      } 
      }, 
      submitHandler: function(form) { 
      $.post($("#myForm").attr("action"), $("#myForm :input").serializeArray(), 
      function(info){ 
       $("#result").html(info); 
       //$(this).animate(function(){ 
       $('html, body').animate({ 
        scrollTop: $("#result").offset().top 
        }, 2000); 
      //}); 
      }); 


      $("#myForm").submit(function() { 
       return false; 
      }); 
         } 
     }); 
}); 

我把代碼放在同一個地方的收入結果:d

+0

jsFiddle please。 – 2013-03-04 06:18:04

回答

3

你必須在提交的回調中運行你的動畫。初始函數運行時觸發回調。 (在這種情況下爲提交功能)。

$("#myForm").submit(function() { 
    $('html, body').animate({ 
     scrollTop: $("#result").offset().top 
    }, 2000); 
    return false; 
}); 

如果您的表單是動態加載的,則必須附加處理程序。

$('#myForm').on('submit', function() { 
    $('html, body').animate({ 
     scrollTop: $("#result").offset().top 
    }, 2000); 
    return false; 
}); 
+0

我已經測試過了,不工作:(我不知道是否因爲我使用外部文件,因爲如果我在中使用它,但是如果我使用.js文件如果是文件上的唯一操作 – ozonostudio 2013-03-04 06:40:49

+0

您是否測試過您的包含.js文件中的任何函數是否正常工作?您的文件可能未正確包含Habe您嘗試在瀏覽器中按F12並檢查腳本/ js控制檯?也許你可以看到那裏的錯誤... – netblognet 2013-03-04 06:47:43

+0

.js文件中的所有其他操作都能正常工作,這是唯一存在問題的行,並且控制檯不會向我顯示任何問題,並且不管是否我清理所有的.js文件,我只把你的例子,腳本繼續工作 – ozonostudio 2013-03-04 07:00:44