推荐阅读
Helm3(K8S 资源对象管理工具)视频教程:https://edu.csdn.net/course/detail/32506
Helm3(K8S 资源对象管理工具)博客专栏:https://blog.csdn.net/xzk9381/category_10895812.html
本文原文链接:https://blog.csdn.net/xzk9381/article/details/113372601,转载请注明出处。如有发现文章中的任何问题,欢迎评论区留言。
一、empty() 方法
使用 empty() 方法可以删除指定元素内的所有子元素:
<!DOCTYPE html>
<html>
<head>
<title></title>
<script src="jquery-1.12.4.js"></script>
<script type="text/javascript">
$('document').ready(function (){
$('#div1').empty();
})
</script>
</head>
<body>
<div id="div1">
<span>测试</span>
<div>测试</div>
<input type="button" value="测试">
</div>
</body>
</html>
二、remove() 方法
remove() 方法和 empty() 方法一样,都是用于移除元素。但是 remove 方法会将元素自身也移除,同时也会移除元素内部所有的数据,包括绑定的事件以及与该元素有关的 jQuery 数据。同时也可以使用参数来过滤要删除的内容,这个参数可以是 jQuery 中的选择器。
1. 删除所有元素
例如删除所有 class 为 div1 的元素:
<!DOCTYPE html>
<html>
<head>
<title></title>
<script src="jquery-1.12.4.js"></script>
<script type="text/javascript">
$('document').ready(function (){
$('.div1').remove()
})
</script>
</head>
<body>
<div class="div1">测试1</div>
<div class="div1">测试2
<span>span 标签</span>
</div>
<div class="div1">测试3</div>
<div class="div1">测试4</div>
<div class="div1">测试5</div>
</body>
</html>
2. 删除元素集合中的指定元素
例如删除元素集合中索引值等于 2 的元素:
<!DOCTYPE html>
<html>
<head>
<title></title>
<script src="jquery-1.12.4.js"></script>
<script type="text/javascript">
$('document').ready(function (){
$('.div1').remove(':eq(2)');
})
</script>
</head>
<body>
<div class="div1">测试1</div>
<div class="div1">测试2
<span>span 标签</span>
</div>
<div class="div1">测试3</div>
<div class="div1">测试4</div>
<div class="div1">测试5</div>
</body>
</html>
删除元素集合中包含内容 “测试4” 的元素:
<!DOCTYPE html>
<html>
<head>
<title></title>
<script src="jquery-1.12.4.js"></script>
<script type="text/javascript">
$('document').ready(function (){
$('.div1').remove(':contains("测试4")');
})
</script>
</head>
<body>
<div class="div1">测试1</div>
<div class="div1">测试2
<span>span 标签</span>
</div>
<div class="div1">测试3</div>
<div class="div1">测试4</div>
<div class="div1">测试5</div>
</body>
</html>
需要注意的是,如果只使用 .div1 选择器,是无法删除子元素 span 的。如果要删除 span 标签,选择器可以使用 $(’.div1 span’)。
三、detach() 方法
detach() 方法处理的效果与 remove() 方法一样,同样支持传递参数。但是 detach() 会将删除的对象保留在内存中,也就是说在删除元素后,还可以继续在内存中对该元素进行操作。
<!DOCTYPE html>
<html>
<head>
<title></title>
<script src="jquery-1.12.4.js"></script>
<script type="text/javascript">
$('document').ready(function (){
$('div').click(function (){
console.log($(this).html());
})
$('#btn1').click(function(){
$.data(div1,'type','detach');
var mydiv = $('#div1').detach();
$('body').append(mydiv);
console.log($.data(div1));
})
$('#btn2').click(function(){
$.data(div2,'type','remove');
var mydiv = $('#div2').remove();
$('body').append(mydiv);
console.log($.data(div2));
})
})
</script>
</head>
<body>
<div id="div1" style="width: 100px;height: 20px;background: #ccc;margin-top: 20px;">detach 测试</div>
<div id="div2" style="width: 100px;height: 20px;background: orange;margin-top: 20px;">remove 测试</div>
<input type="button" value="detach 删除" id="btn1" style="margin-top: 20px;">
<input type="button" value="input 删除" id="btn2" style="margin-top: 20px;">
</body>
</html>
运行上面的代码可以看出,两种方法删除的元素都可以通过变量的方式存储在内存中。不同的是,使用 detach 方法删除的元素在重新插入时,可以保留事件和数据,而 remove 方法删除的元素则不会保留事件和数据。
本文原文链接:https://blog.csdn.net/xzk9381/article/details/113372601,转载请注明出处。如有发现文章中的任何问题,欢迎评论区留言。