`
这些年
  • 浏览: 388751 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

jQuery提供了三种删除节点(转)

    博客分类:
  • js
 
阅读更多

jQuery提供了三种删除节点的方法,即remove(),detach()和empty()。

测试所用HTML代码:

 

[html] view plaincopy
  1. <p title="选择你最喜欢的水果?">你最喜欢的水果是?</p>  
  2. <ul>  
  3.     <li title="苹果">苹果</li>  
  4.     <li title="橘子">橘子</li>  
  5.     <li title="菠萝">菠萝</li>  
  6. </ul>  

 

1、remove()方法

 

[javascript] view plaincopy
  1. $("ul li").click(function(){  
  2.     alert($(this).html());  
  3. });  
  4. var $li = $("ul li:eq(1)").remove();  
  5. $li.appendTo("ul");  

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

 

2、detach()方法

 

[javascript] view plaincopy
  1. var $li = $("ul li:eq(1)").detach();  
  2. $li.appendTo("ul");  

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

 

3、empty()方法

 

[javascript] view plaincopy
  1. var $li = $("ul li:eq(1)").empty();  
  2. $li.appendTo("ul");  

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

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics