宝塔服务器面板,一键全能部署及管理,送你10850元礼包,点我领取

unwrap()函数用于移除每个匹配元素的父元素。

unwrap()将移除当前匹配元素的父元素,但会保留其所有的后辈元素。你可以使用该函数快速取消通过wrap()函数为匹配元素添加的父级包裹元素。

与该函数相对的是wrap()函数,用于将每个匹配元素用指定的元素包裹起来。

该函数属于jQuery对象(实例)。

语法

jQuery 1.4 新增该函数。

jQueryObject.unwrap( )

如果当前匹配元素的父元素为body元素,则unwrap()函数不会移除body元素。

返回值

unwrap()函数的返回值为jQuery类型,返回当前jQuery对象本身(以便于进行链式风格的编程)。

示例&说明

unwrap()函数用于移除每个匹配元素的父元素:

<div><p>段落文本1<span></span></p></div>
<div><p>段落文本2<span></span></p></div>
<!--以上是jQuery代码执行前的html内容-->
<script type="text/javascript">
$("p").unwrap( ); 
</script>
<!--以下是jQuery代码执行后的html内容-->
<p>段落文本1<span></span></p>
<p>段落文本2<span></span></p>

登录后复制

unwrap()函数和replaceWith()函数具有以下等价代码:

$("selector").unwrap( );
// 等价于(父元素为body时除外)
// 用其父元素的所有子节点替换掉父元素
$("selector").parent().replaceWith( function(){
    return $(this).contents();
} );

登录后复制

以下面这段HTML代码为例:

<p id="n1">
    <span id="n2">span#n2</span>    
</p>
<p id="n3">
    <label id="n4">label#n4</label>
    <span id="n5">span#n5</span>
</p>
<span id="n6">span#n6</span>

登录后复制

以下jQuery示例代码用于演示unwrap()函数的具体用法:

// 移除每个span元素的父元素
// n6的父元素为body元素,body元素不会被移除
$("span").unwrap( );

登录后复制

上述代码执行后的完整html代码如下(格式未作任何调整):

    <span id="n2">span#n2</span>    
    <label id="n4">label#n4</label>
    <span id="n5">span#n5</span>
<span id="n6">span#n5</span>

登录后复制

以上就是jQuery.unwrap() 函数详解的详细内容,更多请关注风君子博客其它相关文章!