Dom 删除元素时是否需要分离jQuery中的事件

Dom 删除元素时是否需要分离jQuery中的事件,dom,javascript-events,jquery,dynamic-html,Dom,Javascript Events,Jquery,Dynamic Html,我有一个使用动态选项卡的UI,因此可以将内容加载到选项卡中,然后关闭选项卡并从页面中删除内容 当我将内容加载到选项卡时,我使用jQuery将许多事件附加到元素 当我从页面中删除这些元素时会发生什么?jQuery需要知道吗 此外,如果我多次附加事件,这是否重要?例如,在我的选项卡加载中,我可能使用类选择器(如$('.submitButton'))附加事件。单击(…)。但是我可能已经打开了其他选项卡,它们已经附加了submitButton事件。在这种情况下,我将重新附加相同的事件。这有什么问题吗?如

我有一个使用动态选项卡的UI,因此可以将内容加载到选项卡中,然后关闭选项卡并从页面中删除内容

当我将内容加载到选项卡时,我使用jQuery将许多事件附加到元素

当我从页面中删除这些元素时会发生什么?jQuery需要知道吗


此外,如果我多次附加事件,这是否重要?例如,在我的选项卡加载中,我可能使用类选择器(如
$('.submitButton'))附加事件。单击(…)
。但是我可能已经打开了其他选项卡,它们已经附加了submitButton事件。在这种情况下,我将重新附加相同的事件。这有什么问题吗?

如果删除了包含所有绑定事件的元素,并且删除了与该元素关联的jQuery数据


除此之外,它将从DOM中删除元素,但将所有关联的数据和事件保留在内存中(如果以后要重新插入该元素,这非常有用)

如果使用jQuery方法
。remove()
。empty()
,它们将清除分配给jQuery的所有事件(和其他数据)

从文档中删除():

除了元素本身之外,与元素关联的所有绑定事件和jQuery数据都将被删除

而对于空():

为了避免内存泄漏,jQuery在删除元素本身之前从子元素中删除其他结构,如数据和事件处理程序


如果使用本机API方法进行删除,那么所有这些数据都将挂起。所以最好使用jQuery方法。

我想知道为什么要将同一事件多次附加到元素。如果您正在进行大量绑定/解除绑定,那么可能有更好的方法。