jQuery中detach&&remove&&empty三种方法的区别
jQuery中empty&&remove&&detach三种方法的区别
empty():移除指定元素内部的所有内容,但不包括它本身
remove():移除指定元素内部的所有内容,包括它本身,所有绑定的事件、附加的数据等都会删除
detach():临时删除页面上的所有元素包括它本身,所有绑定的事件、附加的数据等都会保留下来
官方解读:这个方法不会把匹配的元素从jQuery对象中删除,因而可以在将来再使用这些匹配的元素。与remove()不同的是,所有绑定的事件、附加的数据等都会保留下来。
$("div").detach()这一句会移除对象,仅仅是显示效果没有了。但是内存中还是存在的。当你append之后,又重新回到了文档流中。就又显示出来了。
哈哈哈!举的例子,更加明确
注:如有错误请联系本人更改或者删除
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>detach&&remove&&empty三种方法演示</title>
<script src="../jQuery库/jquery-3.3.1.js"></script>
<style>
.DETACH,
.REMOVE,
.EMPTY{
width: 300px;
height: 166px;
border: 5px solid #ccc;
}
.DETACH_DIV,
.REMOVE_DIV,
.EMPTY_DIV{
width: 300px;
height: 120px;
border: 3px solid pink;
box-sizing: border-box;
}
</style>
</head>
<body>
<!-- empty方法演示块 -->
<div class="EMPTY">
<div class="EMPTY_DIV">
<h1>小麦王</h1>
<p>这是小麦王啤酒</p>
</div>
<input id="bt1" type="button" value="点击删除这中的class=EMPTY_DIV中的元素">
</div>
<script>
$("#bt1").on("click",function(){
$(".EMPTY_DIV").empty();
});
</script>
<!-- remove方法演示块 -->
<div class="REMOVE">
<div class="REMOVE_DIV">
<h1>哈尔滨</h1>
<p>哈尔滨啤酒</p>
</div>
<input id="bt2" type="button" value="点击删除这里的class=REMOVE_DIV中的元素">
</div>
<script>
$("#bt2").on("click",function(){
$(".REMOVE_DIV").remove();
});
</script>
<!-- detach方法演示块 -->
<div class="DETACH">
<div class="DETACH_DIV">
<h1>雪花</h1>
<p>雪花啤酒</p>
</div>
<input id="bt3" type="button" value="点击删除这里的class=DETACH_DIV中的元素">
<input id="bt4" type="button" value="点击还原class=DETACH_DIV中的元素">
</div>
<script>
$("#bt3").on("click",function(){
p = $(".DETACH_DIV").detach();
});
$("#bt4").on("click",function(){
$(".DETACH").prepend(p);
});
</script>
</body>
</html>
jQuery中detach&&remove&&empty三种方法的区别的更多相关文章
- Java中创建线程的三种方法以及区别
Java使用Thread类代表线程,所有的线程对象都必须是Thread类或其子类的实例.Java可以用三种方式来创建线程,如下所示: 1)继承Thread类创建线程 2)实现Runnable接口创建线 ...
- jquery remove() detach() empty()三种方法的区别
remove方法把事件删除掉了,数据并没有删除 detach方法保存了事件和数据 empty方法保留了元素本身,移除子节点,删除内容 举例: <!DOCTYPE html><html ...
- C#中??和?分别是什么意思? 在ASP.NET开发中一些单词的标准缩写 C#SESSION丢失问题的解决办法 在C#中INTERFACE与ABSTRACT CLASS的区别 SQL命令语句小技巧 JQUERY判断CHECKBOX是否选中三种方法 JS中!=、==、!==、===的用法和区别 在对象比较中,对象相等和对象一致分别指的是什么?
C#中??和?分别是什么意思? 在C#中??和?分别是什么意思? 1. 可空类型修饰符(?):引用类型可以使用空引用表示一个不存在的值,而值类型通常不能表示为空.例如:string str=null; ...
- jquery动态加载js三种方法实例
这里为你提供了三种动态加载js的jquery实例代码哦,由于jquery是为用户提供方便的,所以利用jquery动态加载文件只要一句话$.getScript(\"test.js\" ...
- jquery取消事件冒泡的三种方法展示
jquery取消事件冒泡的三种方法展示 html代码 <!doctype html> <html> <head> <meta charset="ut ...
- Android中全屏 取消标题栏,TabHost中设置NoTitleBar的三种方法(转)
Android中全屏 取消标题栏,TabHost中设置NoTitleBar的三种方法http://www.cnblogs.com/zdz8207/archive/2013/02/27/android- ...
- Openerp 中打开 URL 的三种 方法
来自:http://shine-it.net/index.php/topic,8013.0.html 最近总结了,Openerp 中打开 URL 的三种 方法: 一.在form view 添加 < ...
- mysql 中添加索引的三种方法
原文:http://www.andyqian.com/2016/04/06/database/mysqleindex/ 在mysql中有多种索引,有普通索引,全文索引,唯一索引,多列索引,小伙伴们可以 ...
- 《Java多线程面试题》系列-创建线程的三种方法及其区别
1. 创建线程的三种方法及其区别 1.1 继承Thread类 首先,定义Thread类的子类并重写run()方法: package com.zwwhnly.springbootaction.javab ...
随机推荐
- 原生JS封装_new函数,实现new关键字的功能
1.前言 众所周知:没有对象怎么办?那就new一个! 那么在JS中,当我们new一个对象的时候,这个new关键字内部都干了什么呢? 现在我们就来剖析一下原生JS中new关键字内部的工作原理. 2.原生 ...
- 裸板中中断异常处理,linux中断异常处理 ,linux系统中断处理的API,中断处理函数的要求,内核中登记底半部的方式
1.linux系统中的中断处理 1.0裸板中中断异常是如何处理的? 以s5p6818+按键为例 1)按键中断的触发 中断源级配置 管脚功 ...
- day5-基本数据类型总结
一.数字int(..)二.字符串replace/find/join/strip/startswith/split/upper/lower/format tempalte = "i am {n ...
- webpack的npm扩展使用
一.NPM的扩展使用 (1) npm init:初始化一个Node.js项目------创建必须的package.json文件 npm init -y:创建必须的package.json文件 (2) ...
- Windows终端利器Cmder
在IT这一行,大部分情况下都是推荐大家使用Linux或者类Unix操作系统去编程,Linux作为一代优秀的操作系统,已经人尽皆知,在IT行业已经成为核心.有条件的大佬都选择了使用mac编程,最优秀的莫 ...
- Python 基础之socket编程(三)
python 基础之socket编程(三) 前面实现的基于socket通信只能实现什么呢?在tcp协议的通信中就是一个用户说一句,服务端给你回一句,你再给服务端说一句,服务端再给你回一句,就这样一直友 ...
- SpringMVC错误:nested exception is java.lang.IncompatibleClassChangeError: class org.springframework.core.type.clas
这是jar包冲突引起的 spring-core.jar已经有asm 所以不用再单独导入asm包了
- kubespray2.11安装kubernetes1.15
关于kubespray Kubespray是开源的kubernetes部署工具,整合了ansible,可以方便的部署高可用集群环境,官网地址:https://github.com/kubernetes ...
- C# V: 读取XML文件
在C#中读取XML有LINQ版本和非LINQ版本. LINQ版本: // Loading from a file, you can also load from a stream var xml = ...
- thinkphp分页样式css代码
<style type="text/css"> .Pagination a:hover,.current{background-color: #f54281;borde ...