3

我有一些代码可以监听页面的滚动,它负责两件事,当“页面”发生更改时执行必要的操作(有效),但也会将 scrollTop 动画到最近的“页面”,但这样做滚动事件被触发,因此它按顺序爬过所有“页面”,直到到达文档的末尾。

如何阻止动画 scrollTop 触发滚动事件?甚至可能吗?

“页面”,因为这是一个 iPad html 页面,每个 1024x768 视图都是一个“页面”

4

1 回答 1

1

您可以在这篇文章中找到答案: https ://stackoverflow.com/a/1659231/237838

您可以编写自己的代码来设置动画值,并设置一个标志来指示更改来自动画。

例如:(未测试)

var scrollAnimating = false
jQuery.fx.step.scrollTop = function(E) {
    scrollAnimating = true;
    E.elem.scrollTop = E.now;
    scrollAnimating = false;
};

$('#gototop').click(function() {
    $('body').animate({scrollTop:0},3000);
    $(window).scroll(function () {
        if (!scrollAnimating)
            $('body').stop();
    });
    return false;
})
于 2013-03-15T14:50:25.137 回答