javascript - on,addEventListener 绑定的事件会随着DOM元素的销毁而在内存中被销毁吗?
问题描述:
<body> <div id="wrap"> <span id="link">点击</a> </div> <script> function foo() { let wrap = document.getElementById('wrap'), link = document.getElementById('link'); function handleClick() { alert('clicked'); } link.onclick = handleClick; // // link.addEventListener('click', handleClick, false); wrap.removeChild(link); } foo(); </script> </body>
如上述代码,在foo函数中为link指向的DOM元素,绑定事件处理程序handleClick
(DOM0
和DOM2
两种方式)。当foo函数执行完毕,DOM元素被销毁,同时引用link
被gc
。请问handleClick
事件处理程序是否也会被gc
呢?是否需要采用link.onclick=null
或link.removeEventListener
方式对事件处理程序解绑?
第 1 个答案:
js一个元素从DOM中被删除后,他所绑定的事件浏览器是如何处理的?
第 2 个答案:
与我这个问题有些类似 事件监听的dom重新生成了,但没有做事件移除, javascript还会内存泄漏吗?
javascript - Next.js 中如何添加Postcss插件:因为制作的网站要兼容IE9,因为需要让IE9支持css中的flex功能,使用了flexibility来处理,于是需要用到postcss-flexibility这个pos ...