當我打電話給$("body").animate({scrollTop: someValue});
我想$(window).scroll(function() { });
也被調用。我怎樣才能做到這一點?
我試過$(window).trigger("scroll")
和$(window).triggerHandler("scroll")
沒有成功。
編輯: 問題解決了。我的$(window).scroll(function() { });
中有一個if
導致了問題。
當我打電話給$("body").animate({scrollTop: someValue});
我想$(window).scroll(function() { });
也被調用。我怎樣才能做到這一點?
我試過$(window).trigger("scroll")
和$(window).triggerHandler("scroll")
沒有成功。
編輯: 問題解決了。我的$(window).scroll(function() { });
中有一個if
導致了問題。
它同時適用於body
和html
,因爲它是不相符的。(例如,FF採用html
滾動,而鍍鉻使用body
)在http://jsfiddle.net/vzyVh/
$("html, body").animate({scrollTop: someValue});
演示
1)不解決我的問題。 2)然後回調被調用兩次。 – Sawny
@sawny,只有當你特別讓你的CSS同時允許'html'和'body'滾動。默認情況下只有其中一個滾動條.. 此外:應用於'window'的'scroll'方法不會只調用一次。它被稱爲每個滾動步驟.. –
混合此答案與http://stackoverflow.com/a/12792245/1504300優雅滾動到底部。 – reallynice
只是使用:
// Trigger the scroll event
$(window).scroll();
來源:
太簡單了!不錯。 –
你可以試試下面的代碼 - 我在這裏滾動到具有ID 「一個」 我的div標籤上。
$('html,body').animate({ scrollTop: $('#one').offset().top }, 'slow');
什麼是動畫類型?那麼如果你在使用'easeIn'這樣的引號內使用animationType呢? – 2619
@ al0neevenings這不是問題。正文部分滾動,但'$(window).scrollU();'不會被調用。 – Sawny
你還可以發佈綁定到'scroll'的方法嗎? –