如果这是我的div元素
<a href="sdfsfsf"><p class="quotes">blablabla</p></a>
如果它不是主页,如何删除此quotes
我无法为我的元素配置此代码:
function delete_row(e)
{
e.parentNode.parentNode.parentNode.removeChild(e.parentNode.parentNode);
}
js程序也必须在页面加载且不是主页时自动加载,应该删除一个元素
答案 0 :(得分:1)
要删除子元素e
的直接父元素,而使子元素仍保留在DOM中(但重设为其原始祖父母),请使用.replaceChild
:
e.parentNode.parentNode.replaceChild(e, e.parentNode);
答案 1 :(得分:0)
如果要将p保留在原位,则需要先将其添加到其父容器中:
function delete_row(e) {
var parent = e.parentNode;
var grandParent = parent.parentNode;
// remove e from its parent
e.remove();
// insert e into its grandParent, before parent
grandParent.insertBefore(e, parent);
// remove parent
parent.remove();
}
但是通过上面@Alnitak的解决方案也可以实现同样的目的。
今天我已经学会了:)