首页 > web前端 > js教程 > 正文

jQuery DOM删除节点操作指南_jquery

WBOY
发布: 2016-05-16 16:11:20
原创
963 人浏览过

下面示例可能用到如下HTML代码:

复制代码 代码如下:


     
  • 苹果

  •  
  • 香蕉

  •  
  • 橘子

  •  
  • 葡萄

  •  
  • 草莓


1、remove()方法:

作用:从DOM中删除所有匹配的元素,传入的参数用于根据jQuery表达式来筛选元素。

例如,删除上图中

    节点中的第二个
  • 元素节点,jQuery代码如下:

    复制代码 代码如下:

    $(document).ready(function() {
       $("ul li:eq(1)").remove();
    });

    当某个节点用remove()方法删除后,该节点所包含的所有后代节点将同时被删除。这个方法的返回值是一个指向已被删除的节点的引用,因此可以在以后再使用这些元素。下面的jQuery代码说明元素用remove()方法删除后,还是可以继续使用的。

    复制代码 代码如下:

    var $li=$("ul li:eq(1)").remove();
    $li.appendTo("ul");   //把删除的节点又重新添加到
      元素里

    可以直接使用appendTo()方法的特性来简化以上代码:

    复制代码 代码如下:

    $("ul li:eq(1)").appendTo("ul");//appendTo()方法也可以用来移动元素,移动元素时首先从文档上删除此元素,然后将该元素插入到文档中的指定节点。

    另外remove()方法也可以通过传递参数来选择性地删除元素:

    复制代码 代码如下:

    $("ul li").remove("li[title='t1']");

    2、detach()方法:

    detach()和remove()一样,也是从DOM中去掉所有匹配的元素。但需要注意的是,这个方法不会匹配的元素从jQuery对象删除,因而可以在将来再使用这些匹配的元素。与remove()不同的是,所有绑定的事件、附件的数据等都会保留下来。

    通过下面的例子,可以知道它与remove()方法的区别:

    复制代码 代码如下:

    $("ul li").click(function(){
       alert($(this).html());
    })
    var $li=$("ul li:eq(1)").detach();  //删除元素
    $li.appendTo("ul");  //重新追加此元素,发现它之前绑定的事件还在,如果使用remove()方法删除元素的话,那么它之前把绑定的事件将失效;

    3、empty()方法

    严格来讲,empty()方法并不是删除节点,而是清除节点,它能清空元素中的所有后代节点。

    复制代码 代码如下:

    $("ul li:eq(1)").empty();//获取第二个
  • 元素节点后,清空此元素里的内容,注意是元素里。

运行后的结果为:

当运行代码后,第二个

  • 元素的内容被清空了,只剩下
  • 元素默认的符号"."。

    以上就是本文所述的全部内容了,希望大家能够喜欢。

  • 相关标签:
    来源:php.cn
    本站声明
    本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
    热门推荐
    热门教程
    更多>
    最新下载
    更多>
    网站特效
    网站源码
    网站素材
    前端模板