在JavaScript中将一系列DomainNodeInserted事件作为单个事件处理
当元素通过在JavaScript中将一系列DomainNodeInserted事件作为单个事件处理,javascript,jquery,javascript-events,Javascript,Jquery,Javascript Events,当元素通过DOMNodeInserted事件插入文档时,我正在应用事件侦听器函数。元素是快速连续插入的,但我只希望在每批元素插入中执行一次函数 我曾尝试在闭包中使用一个具有全局范围的布尔变量来表示侦听器调用的函数是否应该实际执行该操作,并在事件触发完成后使用setTimeout重置该变量 < jQuery正被用于这个项目中的其他功能,因此这里是一个开放的选项,但是在这种情况下,抽象可能不是非常有用的。我注意到了.one()方法。也许可以绑定一个事件处理程序,该事件处理程序在触发一次后立即被取消,
DOMNodeInserted
事件插入文档时,我正在应用事件侦听器函数。元素是快速连续插入的,但我只希望在每批元素插入中执行一次函数
我曾尝试在闭包中使用一个具有全局范围的布尔变量来表示侦听器调用的函数是否应该实际执行该操作,并在事件触发完成后使用setTimeout
重置该变量
< jQuery正被用于这个项目中的其他功能,因此这里是一个开放的选项,但是在这种情况下,抽象可能不是非常有用的。我注意到了.one()
方法。也许可以绑定一个事件处理程序,该事件处理程序在触发一次后立即被取消,然后用超时重新建立
建议?您可以使用您建议的方法(使用
.one()
并在超时后重新连接),但这听起来像是(在调用处理程序之前等待函数的突发调用结束,或者在一批函数调用开始时只调用处理程序一次)您正在寻找的。你可以试试bebounce或Ben Alman的