首页 > 代码库 > jQuery节点操作方法大全

jQuery节点操作方法大全

1.append()

向每个匹配的元素内部追加内容

HTML代码:

<p>我想说:</p>

jQuery代码:

$(‘p‘).append(‘<b>你好</b>‘);

结果:

<p>我想说:<b>你好</b></p>

 

2.appendTo()

将所有匹配的元素追加到指定的元素中。实际上,使用该方法是颠倒了常规$(A).append(B)的操作,既不是将B追加到A中,而是将A追加到B中

HTML代码:

<p>我想说:</p>

jQuery代码:

$(‘<b>你好</b>‘).appendTo(‘p‘);

结果:

<p>我想说:<b>你好</b></p>

 

3.prepend()

向每个匹配的元素内部前置内容

HTML代码:

<p>我想说:</p>

jQuery代码:

$(‘p‘).prepend(‘<b>你好</b>‘);

结果:

<p><b>你好</b>我想说:</p>

 

4.prependTo()

将所有匹配的元素前置到指定的元素中。实际上,使用该方法是颠倒了常规$(A).prepend(B)的操作,既不是将B前置到A中,而是将A前置到B中

HTML代码:

<p>我想说:</p>

jQuery代码:

$(‘<b>你好</b>‘).prependTo(‘p‘);

结果:

<p><b>你好</b>我想说:</p>

 

5.after()

在每个匹配的元素之后插入内容

HTML代码:

<p>我想说:</p>

jQuery代码:

$(‘p‘).after(‘<b>你好</b>‘);

结果:

<p>我想说:<b>你好</b></p>

 

6.insertAfter

将所有匹配的元素插入到指定元素的后面。实际上,使用该方法是颠倒了常规$(A).after(B)的操作,既不是将B插入到A后面,而是将A插入到B后面

HTML代码:

<p>我想说:</p>

jQuery代码:

$(‘<b>你好</b>‘).insertAfter(‘p‘);

结果:

<p>我想说:<b>你好</b></p>

 

7.before

在每个匹配的元素之前插入内容

HTML代码:

<p>我想说:</p>

jQuery代码:

$(‘p‘).before(‘<b>你好</b>‘);

结果:

<p><b>你好</b>我想说:</p>

 

8.insertBefore

将所有匹配的元素插入到指定元素的前面。实际上,使用该方法是颠倒了常规$(A).after(B)的操作,既不是将B插入到A前面,而是将A插入到B前面

HTML代码:

<p>我想说:</p>

jQuery代码:

$(‘<b>你好</b>‘).insertBefore(‘p‘);

结果:

<p><b>你好</b>我想说:</p>

 

9.remove()

作用是从DOM中删除所有匹配的元素,传入的参数用于根据jQuery表达式来筛选元素

 

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

实例:

var $li=$(‘ul li:eq(1)‘).remove();//获取第二个<li>元素节点后,将它从网页中删除

$li.appendTo(‘ul‘);//把刚才删除的节点又重新添加到<ul>元素里

 

另外remove()方法也可以通过传递参数来选择性的删除元素

实例:

$(‘ul li‘).remove(‘li[title!=菠萝]‘);//将<li>元素中属性title不等于‘菠萝’的<li>元素删除

 

10.empty()

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

实例:

$(‘ul li:eq(1)‘).empty();//获得第二个<li>元素节点后,清空此元素里的内容,注意是元素里!

当代码运行后,第二个<li>元素的内容被清空了,只剩下了<li>标签默认符号‘·’

 

11.clone()

实例:

$(‘ul li‘).click(function(){

  $(this).clone().appendTo(‘ul‘);//复制当前节点,并将它追加到<ul>元素中

})

注意!      复制节点后,被复制的新元素并不具备任何行为。如果需要新元素也具有行为,使用clone时传递参数true。

实例:

$(this).clone(true).appendTo(‘ul‘);

 

12.replaceWith()和replaceAll()

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

实例:

$(‘p‘).replaceWith(‘<strong>你最不喜欢的方法是?</strong>‘);

同样上述功能也能使用relaceAll()来实现,该方法与relaceWith()方法的作用相同,只是颠倒了relaceWith()操作。

实例:

$(‘<strong>你最不喜欢的方法是?</strong>‘).replaceAll(‘p‘);

注意!    如果在替换之前,已经为元素绑定事件,替换后原先绑定的事件将会与被替换的元素一起消失,需要在元素上重新绑定事件。

 

13.wrap()

将某个节点用其他标记包裹起来。该方法对于需要在文档中插入额外标记的结构化标记非常有用,而且她不会破坏原始文档的语义。

jQuery代码:

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

结果:

<b><strong title=‘你最不喜欢的方法是‘>你最喜欢的方法是?</strong></b>

 

14.wrapAll()

将所有匹配的元素用一个元素来包裹。它不同于wrap()方法,wrap()方法是将所有的元素进行单独的包裹。

HTML代码:

<strong title=‘方法‘>方法</strong>

<strong title=‘方法‘>方法</strong>

<ul>

  <li title=‘方法一‘>方法一</li>

  <li title=‘方法二‘>方法二</li>

  <li title=‘方法三‘>方法三</li>

</ul>

如果使用wrap()方法包裹<strong>元素

jQuery代码:

$(‘strong‘).wrap(‘<b></b>‘);

结果:

<b><strong title=‘方法‘>方法</strong></b>

<b><strong title=‘方法‘>方法</strong></b>

如果使用wrapAll()方法包裹<strong>元素

jQuery代码:

$(‘strong‘).wrapAll(‘<b></b>‘);

结果:

<b>

  <strong title=‘方法‘>方法</strong>

  <strong title=‘方法‘>方法</strong>

</b>

 

15.wrapInner()

将每一个匹配的元素的子内容(包括文本节点)用其他结构化的标记包裹起来。

jQuery代码:

$(‘strong‘).wrapInner(‘<b></b>‘);

结果:

<strong title=‘喜欢的方法‘><b>喜欢的方法</b></strong>

jQuery节点操作方法大全