如果我使用jQuery更改div的HTML,是否从内存中删除了所有DOM元素和侦听器?

琼脂20

我在想如果我用jQuery html()方法重写div的html,那么所有“旧” DOM元素和所有侦听器都将从内存中删除了吗?

例如:

HTML:

<div id='aDiv'>
    <div id='anANotherDiv'>An Another Div</div>
</div>

Javascript:

$('anANotherDiv').click(function(){
    var b='An Another Div'
    console.log(b);
});


$('#aDiv').html('<div id='oDiv'>This div override the another</div>');
$('#oDiv').click(function(){
    var a='This div override the another';
    console.log(a);
});

因此,当我覆盖旧的GC时,将删除旧的DOM元素和侦听器吗?

塔沙尔·拉伊(Tushar raj)

好的 !!让我们从这种方式开始。

这是您的HTML

<div id='aDiv'>
      <div id='anANotherDiv'>An Another Div</div>
</div>

现在aDiv只包含一个,div因为它是孩子anANotherDiv现在,当您在控制台上进行此操作时

 $("#adIV").html();

控制台输出将是

<div id='anANotherDiv'>An Another Div</div>

现在,当您在控制台上进行类似这样的操作时

$('#aDiv').html('<div id=\"oDiv\">This div override the another</div>');

控制台输出将仅

<div id="oDiv">This div override the another</div>

您实际上manipulating完全是整个aDiv结构。.html()基本上changes是HTML结构。所以,你需要确保你是否要彻底改变HTML一个特定的结构,element或者node,或者你只需要appenddo some other stuffs

希望我对你清楚。

干杯!

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如果删除了DOM元素,是否还将其侦听器也从内存中删除了?

是否有JavaScript / jQuery DOM更改侦听器?

如何删除元素中的所有侦听器?

我如何使用jQuery删除除特定类之外的所有div和其他DOM HTML元素

如果我的点击侦听器没有冒泡,如何使用点击侦听器定位动态添加的 HTML 元素的父元素?

如果未从被破坏的活动中删除侦听器,是否会造成内存泄漏?

从已删除的DOM元素中分离jQuery侦听器

如果我只知道元素和事件,请删除事件侦听器

我是否必须始终在Firestore中删除侦听器?

是否可以在我的Android应用程序中覆盖所有视图的onClick侦听器?

删除所有提交的侦听器

如果dom元素具有指向关闭的指针,那么如果我从页面中删除dom元素,是否会导致内存泄漏?

如果我的ServiceBroker目标“侦听器”调用了结束会话,它是否删除了自拾取当前消息以来添加的任何消息?

Symfony 4-LiipImagine-侦听器删除我的所有目录(缓存清除侦听器)

当元素从 DOM 中删除时,Angularjs 会删除事件侦听器

在删除元素之前是否需要删除事件侦听器?

是否会使用 GC 从浏览器内存中删除不在 DOM 中但带有附加处理程序的元素?

DOM树中所有子元素的一个侦听器

删除DOM对象上的所有事件侦听器

如何在一个div的所有子节点和这些div的数组中添加事件侦听器?

退出时是否有必要分离我的所有 Firestore 侦听器?

活动销毁/暂停时,是否应该删除所有侦听器?Android Studio

如果不先删除侦听器,重新分配数据源是否会导致内存泄漏?

如何在我所有的Spring测试中使用默认配置和默认测试侦听器?

检查元素是否具有事件侦听器。没有jQuery

如何在尚未在 DOM [no-jQuery] 中的元素上添加事件侦听器?

多个侦听器和 removeListener 删除所有内容 Socket.io

未为所有元素附加事件侦听器

Dart lang中的DOM更改侦听器