JS:隐藏元素上的事件侦听器

JS: event listener on hidden element

本文关键字:事件 侦听器 元素 隐藏 JS      更新时间:2023-09-26
当我

更改元素的样式display:none时,我需要removeEventListener吗?
事件会影响页面性能吗?

不,您实际上不需要这样做,特别是如果该元素将再次显示,因为每次添加/删除侦听器并不酷。事件侦听器是异步的,仅在执行时影响性能,因此由于您隐藏了该元素(并且用户无法与之交互),因此只要侦听器保持隐藏状态,就不会调用侦听器,并且不会对性能产生任何影响

另外:即使您使用 parentEl.removeChild(childEl) 完全删除该元素,您仍然不需要删除侦听器,因为删除元素也会导致其所有侦听器被删除。