HTML代码:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <script type="text/javascript" src="../script/jquery-1.10.1.js"></script> <style type="text/css"></style> <title>jQueryTest_0301</title> </head> <body> <p title="选择你喜欢吃的水果">选择你喜欢吃的水果</p> <ul> <li title="苹果">苹果</li> <li title="西瓜">西瓜</li> <li title="香蕉">香蕉</li> <li title="桔子">桔子</li> </ul> </body> </html>
1.查找节点(元素节点和属性节点)
<script type="text/javascript"> //查找元素节点 var $li = $("ul li:eq(2)"); //获取<ul>里第2个<li>节点 var li_txt = $li.text(); //获取第2个<li>节点的文本内容 //查找属性节点 var $param = $("p"); //获取<p>节点 var p_txt = $param.attr("title");//获取属性title的内容 </script>
2.创建节点
<script type="text/javascript"> var $li_01 = $("<li title='甜橙'>甜橙</li>");//创建一个<li>元素,包含元素结点和文本结点以及属性 $("ul").append($li_01); </script>
3.插入节点
插入节点方法:
append() | 向每个匹配的元素的内部追加内容 |
prepend() | 向每个匹配的元素的内部前置内容 |
after() | 向每个匹配的元素之后插入内容 |
before() | 向每个匹配元素之前插入内容 |
jQuery还提供了一些其它的插入方法:appentTo()、prependTo()、insertAfter()、insertBefore()
4.删除节点
jQuery提供了两种删除节点的方法:
● remove()方法:从DOM中删除所有匹配的元素
$("ul li:eq(2)").remove();//删除第二个<li>元素
● empty()方法:清空匹配元素中所有后代结点
$("ul li:eq(2)").empty();
5.复制节点
<script type="text/javascript"> $("ul li").click(function(){ $(this).clone().appendTo("ul"); }); </script>
6.替换节点
● replaceWith():将所有匹配的元素都替换成指定的HTML或者DOM元素
● replaceAll():该方法作用与replaceWith()完全相同,只是颠倒了replaceWith()的操作
<script type="text/javascript"> $("ul li").click(function(){ var txt = $(this).text(); $(this).replaceWith("<li><strong>"+txt+"</strong></li>"); }); </script>
7.包裹节点
● wrap():将所有的元素进行单独包裹
● wrapAll():将所有匹配的元素用一个元素包裹起来
● wrapInner():将第一个匹配的元素的子内容(包括文本节点)用其它结构化的标记包裹起来
$("p").wrap("<b></b>");//用<b>元素将<p>元素包裹起来
8.属性操作
<script type="text/javascript"> var $para = $("p"); $para.attr("title","你最不喜欢吃的水果?"); var txt = $para.attr("title");//获得<p>元素属性title $para.removeAttr(title");//删除<p>的title属性 </script>
9.样式操作
addClass():追加样式
removeClass():移除样式
hasClass():判断是否含有某个样式
toggleClass():切换样式
<script type="text/javascript"> $("ul li:eq(0)").addClass("high"); $("ul li:eq(1)").addClass("another");//追加样式 $("ul li:eq(1)").removeClass("another");//移除样式 $("#changeButton").click(function(){ $("p").toggleClass("another"); }); </script>
10.设置和获取HTML、文本和值
● html()方法:读取或设置某个元素中的HTML内容
● text()方法:读取或设置某个元素中的文本内容
● val()方法:设置或获取元素的值,如果元素为多选,则返回一个包含所有选择的值的数组
<select id="single"> <option>选择1号</option> <option>选择2号</option> <option>选择3号</option> </select> <select id="multiple" multiple="multiple"> <option selected="selected">选择1号</option> <option>选择2号</option> <option>选择3号</option> <option>选择4号</option> <option selected="selected">选择5号</option> </select> <input type="checkbox" value="check1">多选1</input> <input type="checkbox" value="check2">多选2</input> <input type="checkbox" value="check3">多选3</input> <input type="checkbox" value="check4">多选4</input> <input type="radio" value="radio1">单选1</input> <input type="radio" value="radio2">单选2</input> <input type="radio" value="radio3">单选3</input>
使用val()方法设置选中项:
<script type="text/javascript"> $("#single").val("选择3号"); $("#multiple").val(["选择2号","选择4号"]); $(":checkbox").val(["check2","check3"]); $(":radio").val(["radio2"]); </script>
对于下拉列表框,在jQuery中,val()方法从最后一个选项往前读取,如果选项的value或者text中任意一项符合就会选中。
11.遍历节点
● children()方法:取得匹配元素的子元素集合
● next()方法:取得匹配元素后面紧邻的同辈元素
● prev()方法:取得匹配元素前面紧邻的同辈元素
● siblings()方法:取得匹配元素前、后所有的同辈元素
● closest()方法:取得最近的匹配元素