javascript – 一种提高清理DOM元素内容速度的方法

那里!

在我的
AJAX应用程序中,我在页面中有很多内容.因此,当用户更改页面时,我必须清除页面div中的先前内容.使用jQuery:cont.empty()或cont.html(”)清除DOM元素内容和相关数据,事件等.但由于内容很大,页面的性能会急剧下降.有时需要500毫秒来清除快速机器上的内容.我找到了一种使用纯
JavaScript函数快速清除容器的方法:

function empty(element) {
    var i;
    for (i = element.childNodes.length - 1; i >= 0; i--)
    element.removeChild(element.childNodes[i]);
}

不幸的是,这种方法会产生内存泄漏,因为它不会清除缓存中的关联元素jQuery数据.

你能给我一个意见或方法来快速清除内容并防止内存泄漏.

例如,有没有办法用本机函数快速清除内容,并在某些时候(间隔函数)循环$.cache并删除存储的丢失处理程序?垃圾收集器之类的东西.

最佳答案 在容器中的元素上定义事件处理程序时,可以使用过滤器.例如,您可以使用:

$(document).on("click", "#item1", function() {
    ...
});

代替:

$("#item1").on("click", function() {
    ...
});
点赞