在JavaScript中将一系列DOMNodeInserted事件作为单个事件进行处理
Handling a series of DOMNodeInserted events as a single event in JavaScript
当元素通过
DOMNodeInserted
事件插入文档时,我正在应用事件侦听器函数。元素是快速连续插入的,但我只想让我的函数在每批元素插入中执行一次。
我尝试在闭包中使用一个具有全局作用域的布尔变量来表示侦听器调用的函数是否真的应该执行该操作,并与setTimeout
一起在事件完成激发后重置该变量。
jQuery正在用于该项目中的其他功能,因此在这里可以考虑它是一个开放的选项,但在这种情况下,抽象可能没有太大的帮助。我注意到了.one()
方法。也许可以绑定一个事件处理程序,该事件处理程序一旦触发一次就被取消,然后在超时时重新建立?
建议?
您可以使用建议的方法(使用.one()
并在超时后重新附加(,但它听起来像是debounce(等待一系列函数调用结束后再调用处理程序,或者在一批函数调用开始时只调用处理程序一次(。你可以试试John Hann对bebounce的实现,或者试试Ben Alman的jQuery debounce插件。
相关文章:
- 用于多个类事件Jquery的单个函数
- 如何在没有jQuery的情况下模拟按名称命名的事件或解除单个事件的绑定
- 如何编写单个 Jquery 函数以在文档更改和就绪事件时触发
- 为什么我在单个事件上执行多个
- 如何在jquery中使用单个取消删除方法删除多个事件委托
- 如何使用jQuery跟踪单个dom元素上的点击事件,并相应地更新其点击计数器
- 在javascript中阻止文档执行默认操作时,在单个元素中使用默认事件
- 从单个元素中Jquery关闭事件
- androidphonegap-在单个html页面中导航功能或事件时实现后退按钮
- 如何在单个条件下检测键码和单击事件
- jQuery:单个更改事件以触发多个函数不起作用
- 将多个 Javascript 事件折叠为单个事件
- 绑定事件发射器上的单个事件
- 多个事件,用于触发 Chrome 书签 API 中的单个函数
- 尝试在单个类 Jquery 或 js 上应用事件
- 页面上的单个图像会显著减慢所有 jquery 事件的速度
- 从单个 Div 元素中删除单击事件
- 取消单个 Web 工作者事件
- 当文档中的单个元素准备就绪时触发事件的最佳方法
- 如何使用单个按钮执行单击事件以选择不同的 DIV