2016-12-16 31 views
2

这可能不是问我问的最明确的方式,但是,我有一个管理多个分组元素的插件。我的理解是,当需求/需求出现时,插件应该能够销毁自己。所以我的问题是,当DOM元素从页面中移除以帮助JavaScript的垃圾收集并避免事件处理程序等内存泄漏时,jQuery或JavaScript会触发任何类型的钩子吗?如果我不清楚我在问什么,我很抱歉,但我真的不知道问这个问题的最佳方式当HTML元素被删除时破坏钩子

+1

因为jQuery的1.9,你可以用'$( “#myDiv”)上。( “删除”,函数(){ 警报( “元素被删除”); })' –

+0

哈啊,这实际上非常有道理。我怎么能想到这一点。有没有不支持的浏览器?跨浏览器兼容性是非常高的事情要完成的事情。 – Turk

回答

1

是的,有。尽管您将需要jQuery UI或编写自己的特殊事件。问题是只有在使用jQuery删除元素时才有效。除此之外,您需要使用DOM事件或推荐的解决方案 - DOM Mutation Observers。

这些问题应该进一步帮助您:

  1. jQuery - Trigger event when an element is removed from the DOM
  2. How to detect element being added/removed from dom element?

顺便说一句,这是你错过了关键字 - “事件”。这就是jQuery/DOM中调用的这些“钩子”。

+0

太棒了,这就是我所希望的所有信息。非常感谢。 – Turk

相关问题