当前位置:Gxlcms > JavaScript > jQueryDOM删除节点操作指南_jquery

jQueryDOM删除节点操作指南_jquery

时间:2021-07-01 10:21:17 帮助过:5人阅读

下面示例可能用到如下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();//获取第二个
  • 元素节点后,清空此元素里的内容,注意是元素里。

运行后的结果为:

当运行代码后,第二个

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

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

  • 人气教程排行