《jQuery、jQuery UI及jQuery Mobile技巧与示例》——3.14 技巧:移除元素

简介: 第35行的remove()函数移除了整个段落元素。在第39行,remove()移除了段落中的span元素。和remove()函数的其他示例类似,也可以使用$(this).children().remove('span')实现相同的功能。

本节书摘来自异步社区《jQuery、jQuery UI及jQuery Mobile技巧与示例》一书中的第3章,第3.14节,作者:【荷】Adriaan de Jonge , 【美】Phil Dutson著,更多章节内容可以访问云栖社区“异步社区”公众号查看

3.14 技巧:移除元素

当使用detach()移除元素后,它会从屏幕和文档树中消失,但它还保存在内存中。代码清单3-14演示使用remove()和empty()函数把元素从文档和内存中删除。remove()函数会返回被移除的元素,所以可以把它们用变量保存起来,再将它们重新插入到页面中。请记住,当用remove()函数来这么做的时候,所有的jQuery数据和事件信息都会丢失。

代码清单3-14 演示remove()和empty()之间的区别

00 <!DOCTYPE html>
01 
02 <html lang="en">
03 <head>
04  <title>The remove() and empty() function</title>
05  <style>
06  /* 请将下列代码移至一个外部的
07    .css文件 */
08  p {
09   border: 1px solid red;
10  }
11  </style>
12 </head>
13 <body>
14 
15 <h1>Click on the paragraph to remove</h1>
16 <p id="remove">This text will have a different appearance after
17   clicking it</p>
18 
19 <h1>Click on the paragraph to remove the spans</h1>
20 <p id="remove-spans">This text <span id="test">will</span> 
21  have <span>a</span> different appearance after 
22  <span>clicking</span> it</p>
23 
24 <h1>Click on the paragraph to empty</h1>
25 <p id="empty">This text will have a different appearance
26   after clicking it</p>
27 
28 <script src="http://code.jquery.com/jquery-1.7.2.min.js"></script>
29 
30 <script>
31 // 请将下列代码移至一个外部的.js文件中
32 $(document).ready(function() {
33  
34  $('p#remove').click(function() {
35   $(this).remove();
36  });
37 
38  $('p#remove-spans').click(function() {
39   $(this).children('span').remove();
40  
41   // 无效:
42   //$(this).remove('span');
43  
44   // 移除元素自身:
45   //$(this).remove(':has(span)');
46  });
47 
48  $('p#empty').click(function() {
49   $(this).empty();
50  });
51  
52 });
53 </script>
54 </body>
55 </html>

第35行的remove()函数移除了整个段落元素。在第39行,remove()移除了段落中的span元素。和remove()函数的其他示例类似,也可以使用$(this).children().remove('span')实现相同的功能。第49行调用empty()时,段落元素依旧存在,但是它的文本内容被移除了。如果段落元素包含了任何子元素,它们也会被删除。请运行上面的代码示例,看一看红色边框的视觉效果。

相关文章
|
2月前
|
JavaScript
jQuery - 添加元素
通过 jQuery,可以很容易地添加新元素/内容。
47 10
|
13天前
|
JavaScript
超炫酷UI效果的jQuery滑块插件
超炫酷UI效果的jQuery滑块插件
27 0
|
3月前
|
JavaScript 前端开发
jQuery - 添加元素
jQuery - 添加元素
25 2
|
3月前
|
JavaScript 前端开发
jQuery - 添加元素
jQuery - 添加元素
30 6
|
4月前
|
JavaScript
分别用jquery和js修改页面元素
分别用jquery和js修改页面元素
42 2
|
4月前
|
前端开发 JavaScript
jQuery改变元素的方法
jQuery改变元素的方法
29 1
|
4月前
|
JavaScript
H-ui JQuery 给单选按纽赋值不生效
H-ui JQuery 给单选按纽赋值不生效
41 0
H-ui JQuery 给单选按纽赋值不生效
|
4月前
|
JavaScript Java
分别使用java script和jQuery添加页面元素
分别使用java script和jQuery添加页面元素
36 0
|
JavaScript 前端开发
使用 jQuery对象设置页面中 <ul> 元素的标记类型,并使用 DOM 对象设置 <li> 元素的浮动属性和右边距。使用jQuery 对象和 DOM 对象设置页面元素属性
使用 jQuery对象设置页面中 <ul> 元素的标记类型,并使用 DOM 对象设置 <li> 元素的浮动属性和右边距。使用jQuery 对象和 DOM 对象设置页面元素属性
193 0
使用 jQuery对象设置页面中 <ul> 元素的标记类型,并使用 DOM 对象设置 <li> 元素的浮动属性和右边距。使用jQuery 对象和 DOM 对象设置页面元素属性
|
JavaScript 开发者
jQuery_ 复制元素、DOM 插入到现有元素外|学习笔记
快速学习 jQuery_ 复制元素、DOM 插入到现有元素外
236 0
jQuery_ 复制元素、DOM 插入到现有元素外|学习笔记