jQuery学习笔记2

2015-10-29  本文已影响34人  a0d560da7818

2015年10月23日

删除节点

jquery提供了3种删除节点的方法,即remove( ),detach( )和empty( )。
1.remove( )方法
作用:从DOM中删除所有匹配的元素,传入的参数根据jquery表达式来筛选元素。
例如删除<ul>节点的第二个<li>元素节点,示例:

$("ul li:eq(1)").remove( );

当某个节点用remove( )删除后,该节点所包含的所有后代节点将同时被删除。这个方法的返回值是一个指向已被删除的节点的引用,因此可以在以后再使用这些元素。示例:

var $li = $("ul li:eq(1)").remove( );
$li.appendTo("ul");

remove( )方法也可以通过传递参数来选择性的删除元素,示例:

$("ul li").remove("li[title!=菠萝]");

2.detach()方法
detach()方法和remove()方法一样,也是从DOM中去掉匹配的元素。但是,detach()方法不会把匹配的元素从jquery对象中删除,因而将来可以再使用这些匹配的元素。与remove( )不同的是,所有绑定的时间、附加的数据等都会保留下来。

3.empty()方法
严格来讲,empty()并不是删除节点,而是清空节点,他能清空元素中所有后代节点

复制节点

复制节点使用clone( )方法来完成
复制节点后,被复制的新元素不具有任何行为。如果需要新元素也具有复制功能,可以

clone(true)

在clone()中传递了一个true参数,他的含义是复制元素的同时复制元素中绑定的事件。

替换节点

replaceWith( )和replaAll( )

replaceWith( )方法是将所有匹配的元素都替换成指定的HTML或DOM元素。
示例:

$("p").replaceWith("<strong>您好</strong>");

replaceAll( )方法的作用只是颠倒了replaceWith( ),示例:

("<strong>您好</strong>").replaceAll("p");

两者的效果都一样。

2015年10月26日 周一

包裹节点

如果要将某个节点用其他标记包裹起来,使用wrap( )。改方法对于需要在文档中插入额外的结构化标记非常有用。
示例:

$("strong").wrap("<b></b>"); //用<b>标签把<strong>元素包裹起来

得到的结果如下:

<b><strong>您好</strong></b>

包裹节点还有其他两个方法,即wrapAll( )

上一篇 下一篇

猜你喜欢

热点阅读