jQuery是否从已销毁的DOM内容中删除事件侦听器?

Nic*_*uin 9 javascript jquery memory-leaks javascript-events

对于Ajax应用程序,我反复使用jQuery的html()方法来更新DOM容器(覆盖HTML内容,然后将元素绑定到事件侦听器).

附加到被破坏内容的事件侦听器是否被jQuery正确删除,或者存在内存泄漏的风险?(这里已经有一些相关问题,但我找不到答案).

use*_*654 8

是的,当您使用jQuery方法删除或替换内容时,将清除所有事件和数据.它是使用内部cleanData方法完成的.

https://github.com/jquery/jquery/blob/1.9-stable/src/manipulation.js#L242 https://github.com/jquery/jquery/blob/1.9-stable/src/manipulation.js#L746