2012-08-03 108 views
4

我有一個jQuery的scrollTop函數,但我不能動畫它。可能嗎?Animate jQuery的scrolltop

$(".loadmore").click(function() { 
$(this).toggleClass("up-arrow", 1000); 
$(window).scrollTop($('.docs').offset().top, 2000); 
}); 
+0

的這個代碼,你是否嘗試過使用'.animate()'? '.scrollTop'不需要持續時間參數。 [jQuery Docs](http://api.jquery.com/scrollTop/) – MrOBrian 2012-08-03 17:04:02

回答

15

您可以使用animate()這個。適用於div

示例代碼如下:

//Scroll to bottom 
$('div').animate({scrollTop: $('div').get(0).scrollHeight}, 3000); 

//$('div').get(0).scrollHeight - will give the full height of div. 
//scrollTop - will be used to animate from the current position to page end. 
//3000 - will be the duration. 

演示可以在這裏找到:http://jsfiddle.net/codebombs/GjXzD/

+0

當我們嘗試在動畫播放時滾動時,這會給出任何問題嗎?我正面臨着這樣的問題,但我在setTimeout()中調用了這個。滑雪似乎得到了越野車。 – 2014-08-08 07:06:14

4
$('html, body').animate({ scrollTop: $('.docs').offset().top}, 2000); 
+0

http://stackoverflow.com/a/2123721/319266 – Krinkle 2013-07-27 02:42:14

-1
$('#ID').click(function(){ 
$("html, body").animate({ scrollTop: 0 }, 1000); 
return false;   }); 

嘗試jQuery的