Mat*_*rym 34 javascript removechild
是否可以删除除body标签之外没有父元素的dom元素?我知道使用像jquery这样的框架会很容易,但我试图坚持直接的javascript.
这是我发现的代码,否则:
function removeElement(parentDiv, childDiv){
if (childDiv == parentDiv) {
alert("The parent div cannot be removed.");
}
else if (document.getElementById(childDiv)) {
var child = document.getElementById(childDiv);
var parent = document.getElementById(parentDiv);
parent.removeChild(child);
}
else {
alert("Child div has already been removed or does not exist.");
return false;
}
}
Run Code Online (Sandbox Code Playgroud)
谢谢!
Ada*_*son 91
您应该能够获取元素的父元素,然后从中删除元素
function removeElement(el) {
el.parentNode.removeChild(el);
}
Run Code Online (Sandbox Code Playgroud)
更新
您可以将其设置为HTMLElement上的新方法:
HTMLElement.prototype.remove = function() { this.parentNode.removeChild(this); return this; }
Run Code Online (Sandbox Code Playgroud)
然后做el.remove()(这也将返回元素)
swe*_*rvo 19
childDiv.remove();
Run Code Online (Sandbox Code Playgroud)
适用于Chrome 25.0.1364.155
请注意,这在IE11或Opera Mini中不起作用,但所有其他浏览器都支持.
请参阅此处:caniuse上对childnode-remove的引用
Rob*_*t K 16
我想你可以做点像......
var child = document.getElementById(childDiv);
//var parent = document.getElementById(parentDiv);
child.parentNode.removeChild(child);
Run Code Online (Sandbox Code Playgroud)
有关详细信息,请参阅node.parentNode.
document.body.removeChild(child);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
34485 次 |
| 最近记录: |