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

这有点棘手。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 回答
1

这个应该做。。

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

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

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

摘自How to do insert After() in JavaScript without using a library?

于 2012-04-23T21:43:16.590 回答
1

将 id 放入您的 div

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

然后使用appendChild将内容附加到它:

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