我们在学习JavaScript时,详细介绍了DOM对象。从DOM树可以得知,对DOM的操作,主要包括:元素的属性、内容、值、CSS。
一、元素属性的操作
在 jQuery 中,可以对元素的属性执行获取、设置、删除的操作,通过 attr() 方法可以对元素属性执行获取和设置操作,而 removeAttr() 方法则可以轻松删除某一指定的属性。
1、获取元素属性
//JavaScript脚本 <script type="text/javascript"> $(function() { var strAlt = $("img").attr("src"); // 属性值1 strAlt += "<br/><br/>" + $("img").attr("title"); // 属性值2 $("#divAlt").html(strAlt); // 显示在页面中 }) </script> //content <img alt="" title=" 这是一幅画 "src="timg.gif" /> <div id="divAlt"></div>
2、设置元素属性
普通属性:
$("img").attr("src",'images/img01.jpg'); // 设置img的src属性值为:images/img01.jpg
属性为函数:
$("img").attr("src", function() {
return "Images/img0" +Math.floor(Math.random() * 2 + 1) + ".jpg"
});
3、删除元素属性
$("img").removeAttr("src");
二、获取和设置元素
1、获取和设置元素内容(html、text)
2、获取和设置元素值(value)
$('#div1).val() #获取value
$('#div1).val(value1) #设置value
$("select").val().join(","); #获取select的value
<script type="text/javascript"> $(function() { $("select").change(function() { // 设置列表框 change 事件 // 获取列表框所选中的全部选项的值 var strSel = $("select").val().join(","); $("#p1").html(strSel); // 显示列表框所选中的全部选项的值 }) $("input").change(function() { // 设置文本框 focus 事件 var strTxt = $("input").val(); // 获取文本框的值 $("#p2").html(strTxt); // 显示文本框所输入的值 }) $("input").focus(function() { // 设置文本框 focus 事件 $("input").val(""); // 清空文本框的值 }) }) </script>
三、元素样式操作
1、设置css属性
css(name, value)
<script type="text/javascript"> $(function() { $("p").click(function() { $(this).css("font-weight", "bold"); // 字体加粗 $(this).css("font-style", "italic"); // 斜体 $(this).css("background-color", "#eee");// 增加背景色 }) }) </script>
2、增加、删除、切换class
addClass(class0 class1 ...)
removeClass(class0 class1 ...)
toggleClass(class0) #有class0则去掉,没有则添加
四、页面元素操作
内部插入
1、append($div); //添加一个元素
preappend($div);
var $div = $("<div title='jQuery 理念 '>Write Less Do More</div>"); $("body").append($div);
2、append(function(index, html)) //以函数为参数添加一个元素
preappend(function(index, html))
<script type="text/javascript"> $(function() { $("div").append(retHtml);// 插入内容 function retHtml() { var str = " <b>Write Less Do More</b> "; return str; } }) </script>
3、$("span").appentTo($("div"));//把所选择的元素追加到另一个指定的元素集合中.把span元素最佳到div元素中。
preappentTo($("div"));
外部插入
拷贝节点
clone() //简单复制
如果需要在复制时将该元素的全部行为也进行复制,可以通过方法 clone(true) 实现,其格式为:clone(true) //整体复制
replaceWith()和replaceAll()
<script type="text/javascript"> $(function() { $("#Span1").replaceWith("<span title='replaceWith'> 陶国荣 </span>"); $("<span title='replaceAll'>tao_guo_rong@163.com</span>").replaceAll("#Span2"); }) </script>
包裹元素
<script type="text/javascript"> $(function() { $("p").wrap("<b></b>"); // 所有p标签的字体加粗,在元素外面包裹 $("span").wrapInner("<i></i>");// 所有span标签改为斜体,在元素里面包裹 }) </script>
删除和清空元素
remove() //删除元素
empty() //清空节点里面的子元素
五、遍历元素
1、each()
<script type="text/javascript"> $(function() { //遍历每一个img元素 $("img").each(function(index) { // 根据形参 index 设置元素的 title 属性 this.title = " 第 " + index + " 幅风景图片,alt 内容是 " + this.alt; }) }) </script>
参考网址:
http://www.css88.com/jqapi-1.9/