怎么清除用document.createElement("a")创建的节点
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么清除用document.createElement("a")创建的节点相关的知识,希望对你有一定的参考价值。
var ele = document.createElement("a");但没添加到document.body中,
会产生内存泄漏吗? 如果这样,改怎么删除?
谢谢!
var ele = document.createElement("a");
document.body.appendChild(ele);
当然你不添加,就相当于创建一个对象,只不过而没用它。
不管添加与不添加那个对象都存在了
不会产生内存泄露
不用删除
如果添加了,从节点从移除:document.body.removeChild(ele); 参考技术A
可以通过记录变量或为新增的节点添加id、class等标识的方法删除节点。
方法一:
使用变量记录
var newLink = document.createElement('a');document.appendChild(newLink);//将a追加到页面上
document.removeChild(newLink);//将a从页面上删除
方法二:
为节点添加id
var newLink = document.createElement('a');a.id = 'new-link';
document.appendChild(newLink);
document.removeChild(document.getElementById('new-link'));
注意,如果追加到其他元素中,删除新建节点时需要删除指定元素下的节点
生成动态表
function td(id)
var td=document.getElementById(id+'');
var table = document.createElement('table');
var tbody=document.createElement('tbody');
var tr = document.createElement('tr');
var tdchild = document.createElement('td');
tdchild.innerHTML="<input type=text name=txt size=2>";
tr.appendChild(tdchild);
tbody.appendChild(tr);
table.appendChild(tbody);
td.appendChild(table);
我想在点击按钮的同时生成一个表格。它不是这样发生的?
答案
你的代码对我来说是正确的,它似乎按预期工作。
检查this fiddle。
您确定要使用正确的ID调用td函数,并且ID是在td元素中,而不是在table元素中吗?
另一答案
这对我行得通。您是否定义了将运行此功能的单击侦听器?是否存在具有指定ID的td?
以上是关于怎么清除用document.createElement("a")创建的节点的主要内容,如果未能解决你的问题,请参考以下文章