我的页面上有一系列的p标签,我想将它们全部包装到一个容器中,例如

<p>foo</p>
<p>bar</p>
<p>baz</p>

我想将上述所有标签包装到一个容器中,如下所示:
<div>
    <p>foo</p>
    <p>bar</p>
    <p>baz</p>
</div>

如何使用 Vanilla JavaScript将NodeList包装在元素中?

最佳答案

您可以这样:

// create the container div
var dv = document.createElement('div');
// get all divs
var divs = document.getElementsByTagName('div');
// get the body element
var body = document.getElementsByTagName('body')[0];

// apply class to container div
dv.setAttribute('class', 'container');

// find out all those divs having class C
for(var i = 0; i < divs.length; i++)
{
   if (divs[i].getAttribute('class') === 'C')
   {
      // put the divs having class C inside container div
      dv.appendChild(divs[i]);
   }
}

// finally append the container div to body
body.appendChild(dv);

关于javascript - 使用JavaScript包装一组DOM元素,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3337587/

10-12 02:08