我正在为一个输入构建一个 Web 组件,它为 JavaScript 中的 focus
和 blur
事件绑定(bind)监听器。
我从 HTMLElement
扩展,我使用 constructor
来初始化我的组件和事件绑定(bind)。
我的问题是:如果 DOMNodeRemoved
事件被触发,我是否需要取消绑定(bind)这些监听器? JavaScript 引擎可以清除对与我的 Web 组件关联的 DOM 节点的旧引用并将其与其监听器一起清除,这是一个好习惯还是没有用?
最佳答案
如果事件监听器位于元素内部(附加到自定义元素或其中的任何元素),您无需执行任何操作,当元素消失时它们将被清除。但是,您应该清除附加到全局范围的那些。
关于javascript - Web 组件监听器在销毁时解除绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57349342/