使用jQuery使用div包装传递html标签

and*_*sgl 4 html javascript jquery

我在HTML中有以下几行:

<header class="title">
    <h3>Billing Address</h3>
</header>

<address>
 <p>Address</p>
</address>
Run Code Online (Sandbox Code Playgroud)

我想将它们包装在一个新的div使用jQuery 之间,因为我无法访问HTML.

如果我使用.before().after(),它不起作用

$('header').before('<div="new-div">');
$('address').after('</div>');
Run Code Online (Sandbox Code Playgroud)

我曾尝试与.wrap().append(),但也不起作用.

结果应该是:

<div class="new-div">
    <header class="title">
        <h3>Billing Address</h3>
    </header>

    <address>
     <p> Address </p>
    </address>
</div>
Run Code Online (Sandbox Code Playgroud)

谢谢!

Mil*_*war 6

使用.wrapAll()而不是.wrap():

wrapAll:围绕匹配元素集中的所有元素包装HTML结构.

$( "header,address" ).wrapAll( "<div class='new' />");
Run Code Online (Sandbox Code Playgroud)

工作演示