0

JavaScript を使用して HTML タグを複製し、元のタグの後に挿入しようとして<div>いますが、修正できません。私を助けてくれませんか?

JavaScript コード:

var divo = document.getElementsByTagName('div')[0];
var divc = divo.cloneNode(true);

document.getElementByTagName('body')[0].appendChild(divc);

これがフィドルです:http://jsfiddle.net/8Kab6

前もって感謝します。

4

3 に答える 3

0

元のコードのエラーは、最後の行に「s」がありませんでした..

document.getElementByTagName('body')[0].appendChild(divc);

読むべき

document.getElementsByTagName('body')[0].appendChild(divc);
于 2013-09-20T06:50:54.717 に答える
0

元の要素のparentNode関数を使用してその親を取得し、使用appendChildして後で追加します。

var divo = document.getElementById('divTP1');
var divc = divo.cloneNode(true);

divo.parentNode.appendChild(divc);

jsフィドル

追加機能にすでに必要なgetElementsByTagName参照があるため、使用する必要はありません。divo再度呼び出すgetElementsByTagNameには、ブラウザーが DOM を介して別の検索を行う必要があります (簡単なものではありますが)。

getElementsByTagNameまた、必要な要素は 1 つだけで ID があるため、まったく使用する必要はありません。を使用することをお勧めしますgetElementById

これは最も効率的なコードです。

于 2013-09-20T06:48:59.107 に答える
0

getElementByTagName以下のように修正すると、目的の結果が得られます

document.getElementsByTagName('body')[0].appendChild(divc);
于 2013-09-20T06:49:57.950 に答える