Javascript:在DOM中插入新级别

时间:2014-03-28 14:38:50

标签: javascript jquery dom

好的,我有:

<div id="container">
  <div id="mydiv">
   <p>Text</p>
   ... Here is something more inside ...
  </div>
</div>

我希望:

<div id="container">
  <div id="newdiv">
    <div id="mydiv">
      <p>Text</p>
      ... Here is something more inside ...
    </div>
  </div>
</div>

那么我怎样才能把“容器”里面的每个内容都插入并插入一个新的div“newdiv”,它使用JavaScript将孩子从“容器”中当作孩子?使用jquery是一种选择。

5 个答案:

答案 0 :(得分:1)

使用.wrap()

$( "#mydiv" ).wrap( "<div class='newdiv'></div>" );

<强> Working Demo

答案 1 :(得分:1)

使用wrap()

$('#mydiv').wrap($('<div>').attr('id','newDiv'));

演示----> http://jsfiddle.net/FCfP9/2/

答案 2 :(得分:1)

您可以使用 .wrap()

  

围绕匹配集中的每个元素包装HTML结构   元件。

$("#mydiv").wrap("<div id='newdiv'></div>" );

<强> Fiddle Demo

答案 3 :(得分:1)

$('#container').contents().wrapAll('<div id="newdiv"/>');

答案 4 :(得分:1)

如果需要,可以使用纯js:

var content = document.getElementById("container").innerHTML;
var newHtml = "<div id='newDiv'>" + content + "</div>";
document.getElementById("container").innerHTML = newHtml;

以下是演示:http://jsfiddle.net/hWc95/