繁体   English   中英

JavaScript removeChild不起作用

[英]JavaScript removeChild not working

我正在使用此JavaScript代码从页面中删除几个元素,但无法正常工作。 当我使用Opera Dragonfly检查代码时,它显示如下内容:

Uncaught exception: Error: WRONG_ARGUMENTS_ERR

并指向文件和函数名称。

奇怪的是,我在同一页上的另一个函数中使用了完全相同的代码,并且可以正常工作。 该代码非常小而简单:

var docBody = document.getElementById("body");
if(document.getElementById("marginDiv")){
  docBody.removeChild("marginDiv");
}

marginDiv存在bodymarginDiv 我的目标是使缩略图在单击背景时消失。

您正在尝试删除字符串。 字符串几乎不是HTML元素。 您还依赖marginDivbody的直接子对象,事实并非如此。

相反,请尝试以下操作:

var remove = document.getElementById('marginDiv');
if( remove) remove.parentNode.removeChild(remove);

尝试

docBody.removeChild(document.getElementById("marginDiv"));

removeChild需要引用DOM元素,而不是字符串。 尝试这个:

var docBody = document.getElementById("body");
var marginDiv = document.getElementById("marginDiv");

if(marginDiv)){
docBody.removeChild(marginDiv);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM