javascript - 防止来自正在滚动的元素的任何 JS 事件

标签 javascript html css scroll event-bubbling

我强烈怀疑我在移动设备上糟糕的滚动性能是由于滚动的元素触发了大量事件。现在 - 是否有一种方便的方法通常可以防止正在滚动的 DOM 元素内的所有这些事件在滚动完成之前触发?没有 mouseenter、mouseleave、click、focus、active ...什么都没有...直到用户完成滚动?

感谢您的帮助。

最佳答案

您不太可能仅从触发 事件中看到性能问题,否则每个页面都会出现性能问题。这些处理程序中的代码更有可能花费太长时间。

也许你应该debouncethrottle绑定(bind)它们时的事件处理程序。我相信有提供类似功能的 jQuery 插件可用,或者如果您不想包含该库,您可以查看 underscore 的代码并仅提取您需要的方法。

关于javascript - 防止来自正在滚动的元素的任何 JS 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19662963/

相关文章:

javascript - 在从不同域加载页面的 iframe 中访问 "pre"标记

javascript - 这个对象 'see' 它的继承属性如何?

javascript - HTML DOM - 新元素采用错误的值?

javascript - jquery onclick 更改 css 背景图像

javascript - 从与脚本相同的文件夹中获取文件

JavaScript 全屏 API

javascript - 发布到推特

javascript - Vue Webpack 构建破坏了 Bulma CSS

css - 如何在折叠时将 2 列 css 网格的左列内的元素移动到主要内容区域的上方和下方

css - Google 样式工具栏 CSS/HTML