一、复制节点
<script type="text/javascript" src="jquery-1.12.3.min.js"></script> <script> $(function(){ $("div").click(function(){ alert("fasdf") }) $('body').append($('div').clone(true)); //复制一个节点添加到HTML 中 }); </script> </head> <body> <div>几点</div> </body>
clone(true)参数可以为空,表示只复制元素和内容,不复制事件行为。而加上true参数的话,这个元素附带的事件处理行为也复制出来。
二、删除节点
<script type="text/javascript" src="jquery-1.12.3.min.js"></script> <script> $(function(){ $('div').remove(); //直接删除div 元素 }); </script> </head> <body> <div>几点</div> </body>
.remove()不带参数时,删除前面对象选择器指定的元素。而.remove()本事也可以带选择符参数的,比如:$('div').remove('#box');只删除id=box 的div。
.remove()和.detach()都是删除节点,而删除后本身方法可以返回当前被删除的节点对象,但区别在于前者在恢复时不保留事件行为,后者则保留。
<script type="text/javascript" src="jquery-1.12.3.min.js"></script> <script> $(function(){ $("div").click(function(){ alert("fasdf") }); //$('div').remove().appendTo('body'); //直接删除div 元素后再添加回去不保留事件 $('div').detach().appendTo('body');//直接删除div 元素后再添加回去保留事件 }); </script> </head> <body> <div>几点</div> </body>
三、清空节点
<script type="text/javascript" src="jquery-1.12.3.min.js"></script> <script> $(function(){ $('div').empty(); //删除掉节点里的内容 }); </script> </head> <body> <div>几点</div> </body>
四、替换节点
<script type="text/javascript" src="jquery-1.12.3.min.js"></script> <script> $(function(){ $('div').replaceWith('<span>节点</span>'); //将div 替换成span 元素 //$('<span>节点</span>').replaceAll('div'); //同上 }); </script> </head> <body> <div>几点</div> </body>
节点被替换后,所包含的事件行为就全部消失了。