插入:
- insertBofore()
- before()
- insertAfter()
- after()
- appendTo()
- append()
- prependTo()
- prepen()
删除:
- remove()
- detach()
//css <style type="text/css"> .wrapper{ border: 1px solid black; width: 200px; padding: 10px; } .wrapper div{ width: 200px; height: 100px; } .wrapper .box1{ background: red; } .wrapper .box2{ background: orange; } .content { width: 200px; height: 50px; background: blue; } </style> //html <div class="wrapper"> <div class="box1">box1</div> <div class="box2">box2</div> </div> <div class="content">content</div>
jQuery插入元素和内容的操作方法
1.1.insertBefore()--把所有匹配的元素插入到另一个、指定的元素元素集合的前面。(执行剪切操作)
$(\'.content\').insertBefore(\'.box1\'); //将\'content\'插入到\'box1\'的前面,并且对\'content\'执行剪切操作
1.2.before()--在匹配的元素前面插入内容。这里的内容包两种含义,一种是将参数以字符串格式直接插入到元素的前面;另一种含义就是,将jQuery对象包裹的节点及其所包含的内容剪切到元素的前面。
参数可以直接写入字符串,jQuery对象,或者方法(方法的返回值作为正式的参数传入函数处理)。
$(\'.box1\').before(\'.content\');//直接将\'.content\'字符串添加到了box1前面 $(\'.box1\').before( $(\'.content\') );//将\'content\'插入到\'box1\'的前面,并且对\'content\'执行剪切操作
1.3.insertAfter()--与insertBefore()的实现机制一致,insertAfter是将剪切的元素插入到指定的元素的后面。
1.4.after()--与before()的实现机制一致,after是将剪切的元素或者指定的内容插入到匹配的元素的后面。
1.5.append()--将被选内容(元素或数据)插入到指定的元素的末尾(内容机制与before一致,可以直接将参数数据插入到元素的末尾,也可以将jQuery对象包裹的节点剪切到元素的末尾)。
$(\'.content\').appendTo(\'.wrapper\');//将\'.content\'剪切到\'.wrapper\'的末尾 $(\'.wrapper\').append( $(\'.content\') );//将\'.content\'剪切到\'.wrapper\'的末尾
1.6.prependTo()--在被选元素的开头插入HTML元素。
1.7.prepend()--将被选内容(元素或数据)插入到指定的元素的开头(内容机制与before一致,可以直接将参数数据插入到元素的末尾,也可以是jQuery对象包裹的节点剪切到元素的开头)
jQuery删除元素和内容的操作方法
2.1.remove()--方法用来移除元素,包括福哦呦的文本和子节点,基于链式调用还是会返回这个元素的jQuery对象,但是返回的是一个全新的节点,原来绑定的数据和事件不会被保留。
$(\'.content\').click(function(){ $(\'.content\').remove().appendTo(\'body\'); alert(1); });//重新被添加到body的\'.content\'的事件不能再次被触发了(alert(1)没有了弹窗效果)
2.2.detach()--与remove()基本一致,都是用来删除元素,但是链式调用机制返回的jQuery对象继续保留了原对象节点的数据和绑定的事件。
$(\'.content\').click(function(){ $(\'.content\').detach().appendTo(\'body\'); alert(1); });//被重新添加到body的\'.content\'的事件还可以被再次出发
$()--jQuery构造函数与添加节点相关的一个知识点
构造方法的参数可以是html代码(可以带样式和属性)的字符串形式,这个字符串可以被jQuery构造函数解析成真正的DOM结构。
$(\'<div style="background-color:red;width:100px;height:100px;"></div>\').appendTo(\'body\');