您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

当用户手动滚动时,jQuery .animate()停止滚动吗?

当用户手动滚动时,jQuery .animate()停止滚动吗?

功能更改为此:

var page = $("html, body");

$( "section" ).click(function(e) {

   page.on("scroll mousedown wheel DOMMouseScroll mousewheel keyup touchmove", function(){
       page.stop();
   });

   page.animate({ scrollTop: $(this).position().top }, 'slow', function(){
       page.off("scroll mousedown wheel DOMMouseScroll mousewheel keyup touchmove");
   });

   return false; 
});

这将:

一些额外的信息:

您为什么要绑定所有这些事件?“滚动鼠标滚轮等…”

有许多不同类型的滚动事件。您可以使用鼠标,键盘,触摸屏等向下滚动。通过此操作,我们确保可以捕获 所有 这些内容

有什么用var page = $("html, body");?我不能随便使用$("html, body")吗?

如果您多次使用同一选择器,则最好将它们缓存在一个变量中。与让程序每次重新计算选择器相比,它更容易编写/使用,并且具有更好的性能

我在哪里可以找到更多信息.animate().stop()

您可以阅读.animate()和.stop()的jQuery文档。我还建议您阅读有关动画队列的内容,因为.stop()该原则适用于此。

JS 2022/1/1 18:13:32 有802人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶