jQuery的删除的三种方法remove(),detach(),empty()

时间:2022-01-08 06:14:00

remove()方法是从DOM中删除所有匹配的元素,包括匹配元素的子元素.但是他会有一个返回值,
返回值是一个指向已被删除的节点的引用,所以说,remove删除的元素,还可以再回收利用.

 var $li_2 = $("ul li:eq(1)").remove();//删除第二个li标签
$("ul").append($li_2);//将删除的标签在添加到ul中去

remove()也可以添加参数,有选择性的删除元素.

 $("ul li").remove("[value=1]"); //删除第二个元素.

detach()和romove()一样,也是从DOM中删除所有匹配的元素,但是detach()不支持参数.
不会把匹配的元素从jQuery对象中删除,任然有返回值,回收再利用.与remove()不同的额是,
被重新利用的元素的事件都会保留下来.

  var $li_2 = $("ul li:eq(1)").detach(); //删除第二个li标签
$("ul").append($li_2); //将删除的标签在添加到ul中去,这里面的li标签的单击事件依然存在

empty()方法不是删除节点,而是清空节点,它能清空元素中的所有后台节点.

 $("ul li:eq(1)").empty();//清空第二个li标签的内容