在我之前提出的问题之后,我发现了这个问题,这可能会更好。
我需要在页面上添加很多项目,我发现有时appendChild + fregment比innerHTML更快。无论如何,现在我需要知道添加元素和添加事件监听器的最快方法。
我看到的一种方法是监听窗口对象然后过滤。 优点:
缺点:
我知道的另一种方法是听取创建的元素。
但是对于innerHTML,我认为只适用于窗口对象监听器。
还有其他任何意见吗? 感谢
答案 0 :(得分:2)
处理“多个”元素的“多个”事件处理程序的最佳做法是事件委托,这基本上就是你所描述的。
在最近的共享父级上创建一个监听器(document.body
当然会为任何元素创建一个监听器,但是下面可能还有另一个父节点。)
性能不应该是那里的问题。创建200个事件处理函数而不是一个函数要糟糕得多。