jQuery中的DOM操作包括以下部分
1 查找节点
1.1 查找元素节点
1.2 查找属性节点
2 创建节点
2.1 创建元素节点
2.2 创建文本节点
2.3 创建属性节点
3 插入节点
4 删除节点
5 复制节点
6 替换节点
7 包裹节点
8 属性操作
9 样式操作
10 设置和获取HTML、文本和值
11 遍历节点
12 CSS-DOM操作
1 查找节点
1.1 查找元素节点
利用jQuery选择器查找元素
如: $(“ul li:eq(1)”); //获取ul下第2个li节点
1.2 查找属性节点
利用jQuery选择器查找到需要的元素之后,就可以使用 attr() 方法来获取它的的各种属性的值。
如: $("p").attr("title"); //获取<p>元素节点属性title
2 创建节点
2.1 创建元素节点
//$(html)创建一个DOM对象,并包装成一个JQuery对象返回
如:var $li_1=$("<li></li>") //创建一个<li>元素
$("ul").append($li_1); //用append方法将新元素插入文档中
2.2 创建文本节点
如:var $li_1=$("<li>香蕉</li>") //创建一个<li>元素,包括元素节点和文本节点,“香蕉”就是创建的文本节点
$("ul").append($li_1); //用append方法将新元素插入文档中
2.3 创建属性节点
如:var $li_1=$("<li title="香蕉">香蕉</li>") //创建一个<li>元素,
//包括元素节点、文本节点和属性节点
// title=“香蕉”就是创建的属性节点
$("ul").append($li_1); //用append方法将新元素插入文档中
3 插入节点
插入节点的方法:
append() 向每个匹配的元素内部追加内容
appendTo() 将所有匹配的元素追加到指定的元素中。实际上,使用该方法是颠倒了常规的$(A).append(B)的操作,即不是将B追加到A中,而是将A追加到B中
prepend() 向每个匹配的元素内部前置内容
prependTo() 将所有匹配的元素前置到指定的元素中。实际上,使用该方法是颠倒了常规的$(A).prepend(B)的操作,即不是将B前置到A中,而是将A前置到B中
after() 在每个匹配的元索之后插入内容
insertAfter() 将所有匹配的元素插入到指定元素的后面。实际上,使用该方法是颠倒了常规的$(A).after(B)的操作,即不是将B插入到A后面,而是将A插入到B后面
before() 在每个匹配的元素之前插入内容
insertBefore() 将所有匹配的元素捅入到指定的元素的前面。实际上,使用该方法是颠倒了常规的$(A).before(B)的操作,即不是将B插入到A前面,而是将A插入到B前面
这些插入节点的方法不仅能将新创建的DOM元素插入到文档中,也能对原有的DOM元素进行移动。例如利用它们创建新元素并对其进行插入操作:
也利用它们对原有的DOM元素进行移动:
4 删除节点
jQuery提供了三种删除节点的方法,即remove(),detach(),empty()。
1. remove()方法
作用是从DOM中删除所有匹配的元素,传入的参数用于根据JQuery表达式来筛选元素。
2. detach() 方法
detach()和remove()一样,也是从DOM中去掉所有匹配的元素。但需要注意的是,这个方法不会把匹配的元素从jQuery对象中删除,因而可以在将来再使用这些匹配的元素。与remove()不同的是,所有绑定的事件、附加的数据都会保留下来。
如:$("ul li").click(function(){
alert($(this).html());
})
var $li=$("ul li:eq(1)").detach(); //删除元素
$li.appendTo("ul"); //重新追加此元素,发现它之前绑定的事件还在,如果使用remove()方法删除元素的话,那么它之前绑定的事件将失效。
3. empty()方法
严格来讲,empty()方法并不是删除节点,而是清空节点,它能清空元素中的所有后代节点。JQuery代码如下:
原文:http://www.cnblogs.com/dengzk/p/5118692.html