DOM操作分为3个方面:
关于jQuery中的DOM操作
查找节点可以很轻易通过就jQuery选择器来找到,这里略过。
创建节点
var $myli= $(‘<li title="troy">troy123</li>‘);//创建jQuery对象 $("ul").append($myli);//将创建的DOM元素添加到ul中
插入节点
$myli.appendTo("ul");//改编自创建节点中的代码,效果一样
prepend() 向每个匹配的元素内部前置内容(与append相反,append是加在元素里子元素的后面)
var $one_li=$("ul li:eq(1)"); var $two_li=$("ul li:eq(2)"); $two_li.insertBefore($one_li);//这样就实现了两个节点互换
删除节点
var $li= $("ul li:eq(0)").remove(); $li.prependTo("ul");//结果没变化 $("ul li").remove("li[title=troy]");//选择性删除
复制节点
clone()方法进行复制节点,如果传参clone(true)就表示连节点的事件都会复制。
替换节点
我们当然可以先删后增来达到替换的效果,当然也有更简单的方法,那就是用replaceWith()和repalceAll();
包裹节点
$("strong").wrap("<b></b>");//每一个被匹配的<strong>元素都将被<b>包裹起来 $("strong").wrapAll("<b></b>");//所有被匹配到的<strong>元素被同一个<b>包裹起来 $("strong").wrapInner("<b></b>");//每一个被匹配到的<strong>元素的所有子元素都被一个<b>包裹起来
关于jQuery中的属性操作
var $myDiv=$("div"); var text=$myDiv.attr("title");//获取属性 $myDiv.attr("title","Troy123");//设置单个属性 $myDiv.attr({title:"Troy123",name:"Troy"});//设置单个属性 $myDiv.removeAttr("title");//删除属性
关于jQuery中的样式操作
设置和获取HTML、文本和值
$("#mySelect").val("选项2");//选中选项2 $("#mulSelect").val(["选项2","选项3"]);//选中选项2,选项3 $(":checkBox").val(["check2","check3"]);//选中value为check2和check3的多选框 $(":radio").val(["radio1"]);//选中value为radio1的单选框 //下面用attr方法实现 $("#mySelect option:eq(1)").attr("selected",true); $("[value=radio2]:radio").attr("checked",true);
遍历节点
$("#mydiv").parent(); $("#mydiv").parents("div"); $("#mydiv").closest("div");
CSS-DOM操作
css()方法无论是color属性,还是外部CSS导入,还是拼接在HTML的元素里,css方法都可以获取到属性style里的其他属性的值。
$("#mydiv").css("height");//获取样式高度值,可能为auto之类的 $("#mydiv").height();//获取真实高度值,必定为数值px
关于元素定位
var myOffset=$("#mydiv").offset(); var left=myOffset.left; var top=myOffset.top;
$("#myTextArea").scrollTop();//获取距离 $("#myTextArea").scrollTop(300);//设置距离
原文:http://www.cnblogs.com/vvjiang/p/5161958.html