jQuery DOM删除节点操作指南


Posted in Javascript onMarch 03, 2015

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

<ul>

  <li title="t1">苹果</li>

  <li>香蕉</li>

  <li>橘子</li>

  <li>葡萄</li>

  <li>草莓</li>

</ul>

1、remove()方法:

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

例如,删除上图中<ul>节点中的第二个<li>元素节点,jQuery代码如下:

$(document).ready(function() {

   $("ul li:eq(1)").remove();

});

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

var $li=$("ul li:eq(1)").remove();

$li.appendTo("ul");   //把删除的节点又重新添加到<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();//获取第二个<li>元素节点后,清空此元素里的内容,注意是元素里。

运行后的结果为:

jQuery DOM删除节点操作指南

当运行代码后,第二个<li>元素的内容被清空了,只剩下<li>元素默认的符号"."。

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

Javascript 相关文章推荐
IE 上下滚动展示模仿Marquee机制
Dec 20 Javascript
神奇的7个jQuery 3D插件整理
Jan 06 Javascript
THREE.JS入门教程(3)着色器-下
Jan 24 Javascript
jQuery平滑旋转幻灯片特效代码分享
Sep 07 Javascript
ajax实现动态下拉框示例
Jan 10 Javascript
JavaScript基础之AJAX简单的小demo
Jan 29 Javascript
微信小程序 图片绝对定位(背景图片)
Apr 05 Javascript
JS库particles.js创建超炫背景粒子插件(附源码下载)
Sep 13 Javascript
Three.js如何实现雾化效果示例代码
Sep 27 Javascript
JS运动特效之链式运动分析
Jan 24 Javascript
Vue基于vuex、axios拦截器实现loading效果及axios的安装配置
Apr 26 Javascript
Vue+Node实现商品列表的分页、排序、筛选,添加购物车功能详解
Dec 07 Javascript
JS实现表格数据各种搜索功能的方法
Mar 03 #Javascript
深入理解JavaScript系列(27):设计模式之建造者模式详解
Mar 03 #Javascript
javascript验证身份证号
Mar 03 #Javascript
JS烟花背景效果实现方法
Mar 03 #Javascript
深入理解JavaScript系列(26):设计模式之构造函数模式详解
Mar 03 #Javascript
深入理解JavaScript系列(25):设计模式之单例模式详解
Mar 03 #Javascript
js+jquery常用知识点汇总
Mar 03 #Javascript
You might like
如何在PHP中使用Oracle数据库(4)
2006/10/09 PHP
Linux下ZendOptimizer的安装与配置方法
2007/04/12 PHP
php缓冲输出实例分析
2015/01/05 PHP
Smarty模板变量调节器用法分析
2016/05/23 PHP
PHP实现断点续传乱序合并文件的方法
2018/09/06 PHP
js关于字符长度限制的问题示例探讨
2014/01/24 Javascript
Javascript的严格模式strict mode详细介绍
2014/06/06 Javascript
基于javascript实现判断移动终端浏览器版本信息
2014/12/09 Javascript
jQuery实现强制cookie过期方法汇总
2015/05/22 Javascript
AngularJS删除路由中的#符号的方法
2016/09/20 Javascript
微信小程序 教程之数据绑定
2016/10/18 Javascript
微信小程序 数据绑定详解及实例
2016/10/25 Javascript
Bootstrap基本组件学习笔记之进度条(15)
2016/12/08 Javascript
jQuery Ajax实现跨域请求
2017/01/21 Javascript
用jQuery旋转插件jqueryrotate制作转盘抽奖
2017/02/10 Javascript
Layui table 组件的使用之初始化加载数据、数据刷新表格、传参数
2017/09/11 Javascript
详解axios 全攻略之基本介绍与使用(GET 与 POST)
2017/09/15 Javascript
nodejs acl的用户权限管理详解
2018/03/14 NodeJs
Vue 中如何正确引入第三方模块的方法步骤
2019/05/05 Javascript
vue使用代理解决请求跨域问题详解
2019/07/24 Javascript
vue element 生成无线级左侧菜单的实现代码
2019/08/21 Javascript
Python中删除文件的程序代码
2011/03/13 Python
Python的CGIHTTPServer交互实现详解
2018/02/08 Python
python实现简单名片管理系统
2018/11/30 Python
关于python pycharm中输出的内容不全的解决办法
2020/01/10 Python
python使用自定义钉钉机器人的示例代码
2020/06/24 Python
Keras中的两种模型:Sequential和Model用法
2020/06/27 Python
python如何快速生成时间戳
2020/07/21 Python
Python下载网易云歌单歌曲的示例代码
2020/08/12 Python
python之pygame模块实现飞机大战完整代码
2020/11/29 Python
python爬虫爬取图片的简单代码
2021/01/18 Python
篝火晚会主持词
2014/03/25 职场文书
个人廉洁自律承诺书
2014/03/27 职场文书
学生请假条
2014/04/11 职场文书
公司周年庆活动方案
2014/08/25 职场文书
oracle连接ODBC sqlserver数据源的详细步骤
2021/07/25 Oracle