元素被销毁后,事件会自动解除绑定吗?

kra*_*er1 7 jquery

当元素被破坏时会发生什么?据我所知,jQuery仍然在其全局"存储库"中拥有该事件.在我的例子中,创建了很多元素,绑定了一个事件并再次销毁......

过度使用后,我是否需要害怕一些记忆问题?

gue*_*ate 0

是的。如果您有很多事件处理程序附加到 html 元素,那么您应该显式删除它们(通过使用 jQuery 方法,如remove或 ,empty而不是例如detach或“常规”js)或更改事件“绑定”策略。我的意思是利用 jQuery 的事件委托。通过这种方式,您可以找到事件绑定元素集群的一些共同祖先,并将其绑定到事件。经验法则始终是尽量减少事件处理程序的数量。