0

重複の可能性:
要素の挿入
ライブラリを使用せずにJavaScriptでAfter()を挿入するにはどうすればよいですか?

ページの本文の後にチャットウィンドウを追加するプロジェクトにこのJavaScriptが少しありますが、指定したdiv"myPublisherDiv"の後にチャットウィンドウが追加されるように変更したいと思います。これはとても簡単だと思いますが、何かアイデアはありますか?前もって感謝します!

var div = document.createElement('div');
    div.setAttribute('id', 'stream' + streams[i].streamId);
    document.body.appendChild(div);
4

3 に答える 3

1

これはそれを行う必要があります..

var div = document.createElement('div');
div.setAttribute('id', 'stream' + streams[i].streamId);

var target = document.getElementById('myPublisherDiv');

target.parentNode.insertBefore(div, target.nextSibling);

ライブラリを使用せずに JavaScript で After() を挿入する方法は?

于 2012-04-23T21:43:16.590 に答える
1

あなたのdivにIDを入れてください

<div id="myDiv">..</div>

そして、 appendChildを使用してそれに追加します。

document.getElementById("myDiv").appendChild(div);
于 2012-04-23T21:39:40.830 に答える
1

これは少しトリッキーです。insertBeforeは単純です。ノードの後に​​挿入するために、ちょっとしたヘルパー関数を書きました。

function insertAfter(newElement, referenceElement) {
    referenceElement.parentNode.insertBefore(newElement, referenceElement.nextSibling);
}

var div = document.createElement('div');
...
insertAfter(document.getElementById("myPublisherDiv"), div);

ただし、https://stackoverflow.com/a/1559632/1048572も参照してください。

于 2012-04-23T21:42:37.030 に答える