0

我只用 jQuery 工作了几天,所以问题可能不是很有趣。我在 ajax 上按下按钮时重新加载了DIV 。DIV内容本身为按钮注册了单击处理程序。所以问题是:我应该删除已注册加载内容的处理程序吗?

我做了一些小实验,看起来我不应该这样做。但这是真的吗?

4

1 回答 1

1

如果元素从 DOM 中删除并且您没有对它们的进一步引用,则事件处理程序最终也会被垃圾收集。

但是,如果您有参考,例如

var someElement = document.getElementById('someId')

那么即使该元素被您的更新过程删除,someElement仍然会持有对该元素的引用。这也意味着事件处理程序仍然存在于内存中。

于 2012-06-21T14:29:49.593 回答