15-删除与替换元素

删除与替换元素

作者:曾庆林

删除元素

以下方法可以从文档中删除指定的DOM元素,或从指定元素中删除所有子节点。

  • remove()方法
  • empty()方法

remove()案例
html

<button>按钮</button>
<div class="b">
    <h2>this 我是h2</h2>
</div>
<p>itemp1</p>
<p>itemp2</p>
<p>itemp3</p>
<p>itemp4</p>
<p>itemp5</p>

js

$(function(){
    $("button").click(function(){
        $("p:eq(0)").remove();
    })  
})

单击按钮执行后的结果

<button>按钮</button>
<div class="b">
    <h2>this 我是h2</h2>
</div>

<p>itemp2</p>
<p>itemp3</p>
<p>itemp4</p>
<p>itemp5</p>

第一个p元素会被删除


empty()案例
html

<button>按钮</button>
<div class="b">
    <h2>this 我是h2</h2>
</div>
<p>itemp1</p>
<p>itemp2</p>
<p>itemp3</p>
<p>itemp4</p>
<p>itemp5</p>

js

$(function(){
    $("button").click(function(){
        $("p:eq(0)").empty();
    })  
})

单击按钮执行后的结果

<button>按钮</button>
<div class="b">
    <h2>this 我是h2</h2>
</div>
<p></p>
<p>itemp2</p>
<p>itemp3</p>
<p>itemp4</p>
<p>itemp5</p>

第一个p元素内容会被清空


替换元素

以下方法用来对DOM元素执行替换操作,即以新建元素或现有元素替换指定的目标元素。

  • replaceWith()方法
  • replaceAll()方法

replaceWith()案例
html

<button>按钮</button>
<div class="b">
    <h2>this 我是h2</h2>
</div>
<p>itemp1</p>
<p>itemp2</p>
<p>itemp3</p>
<p>itemp4</p>
<p>itemp5</p>

js

$(function(){
    $("button").click(function(){
       $("p").replaceWith("<a>this is a </a>");
    })  
})

单击按钮执行后的结果

<button>按钮</button>
<div class="b">
    <h2>this 我是h2</h2>
</div>
<a>this is a </a>
<a>this is a </a>
<a>this is a </a>
<a>this is a </a>
<a>this is a </a>

所有的的p元素都会替换为a元素

replaceAll()案例
html

<button>按钮</button>
<div class="b">
    <h2>this 我是h2</h2>
</div>
<p>itemp1</p>
<p>itemp2</p>
<p>itemp3</p>
<p>itemp4</p>
<p>itemp5</p>

js

$(function(){
    $("button").click(function(){
      $("<div>到碗里来</div>").replaceAll($("p"));
    })  
})

单击按钮执行后的结果

<button>按钮</button>
<div class="b">
    <h2>this 我是h2</h2>
</div>
<div>到碗里来</div>
<div>到碗里来</div>
<div>到碗里来</div>
<div>到碗里来</div>
<div>到碗里来</div>

所有的的p元素都会替换为a元素


复制元素

clone() 复制元素
clone(true) 复制元素并复制元素绑定的事件

clone() 案例
html

<button>按钮</button>

js

$(function(){
    $("button").click(function(){
        var btn=$(this).clone(true);
        //true 还会复制事件
        btn.insertAfter($(this));
    })  
})

单击任意按钮执行后的结果

<button>按钮</button>
<button>按钮</button>
<button>按钮</button>
<button>按钮</button>
...

所有的的p元素都会替换为a元素

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • (续jQuery基础(1)) 第5章 DOM节点的复制与替换 (1)DOM拷贝clone() 克隆节点是DOM的常...
    凛0_0阅读 1,370评论 0 8
  • 1.JQuery 基础 改变web开发人员创造搞交互性界面的方式。设计者无需花费时间纠缠JS复杂的高级特性。 1....
    LaBaby_阅读 1,202评论 0 1
  • 1.JQuery 基础 改变web开发人员创造搞交互性界面的方式。设计者无需花费时间纠缠JS复杂的高级特性。 1....
    LaBaby_阅读 1,386评论 0 2
  • 原文链接 http://blog.poetries.top/2016/10/20/review-jQuery 关注...
    前端进阶之旅阅读 16,681评论 18 503
  • 大概因为每个昨天造就现在的自己,但我们却总在每一个曾经期许明天,所以今天一直被空置,它属于昨天,属于明天,却从来不...
    杨暖暖的光阅读 772评论 0 0