0

この JavaScript コードを使用してページからいくつかの要素を削除していますが、機能していません。Opera Dragonfly でコードを調べると、次のように表示されます。

Uncaught exception: Error: WRONG_ARGUMENTS_ERR

ファイルと関数名を指します。

奇妙なことは、同じページの別の関数でまったく同じコードを使用し、問題なく動作することです。コードは非常に小さくシンプルです。

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

と の両方がページbodymarginDiv存在します。私の目標は、背景をクリックするとサムネイルが消えるようにすることです。

4

3 に答える 3

8

文字列を削除しようとしています。文字列はほとんど HTML 要素ではありません。marginDivまた、 の直接の子であることに依存してbodyいますが、そうでない場合もあります。

代わりに、これを試してください:

var remove = document.getElementById('marginDiv');
if( remove) remove.parentNode.removeChild(remove);
于 2012-05-03T14:31:09.850 に答える
4

試す

docBody.removeChild(document.getElementById("marginDiv"));
于 2012-05-03T14:31:22.597 に答える
1

removeChild文字列ではなく、DOM 要素への参照が必要です。これを試して:

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

if(marginDiv)){
docBody.removeChild(marginDiv);
}
于 2012-05-03T14:37:29.800 に答える