我有一些代码可以监听页面的滚动,并且它负责两件事情,在“页面”发生变化时执行必要的操作(可以工作),还可以将scrollTop设置为最近的“页面”,但是这样做会触发scroll事件,因此它会顺序遍历所有“页面”,直到它到达文档的末尾。
如何停止动画scrollTop触发滚动事件?它甚至可能吗?
“pages”因为这是一个iPad html页面,每个1024x768视图都是“页面”
答案 0 :(得分: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; })