JQuery--Note
2017-02-23 17:23
78 查看
JQuery 优秀的JavaScript库
① JQuery对象就是通过JQuery( $(DOM) )包装DOM对象后产生的象,
② JQuery对象是数组,可以通过角标【index】的方法获取到DOM
对象,(注意如果获取的是JQuer对象需要在变量前面加$)
JQuery简单的helloworld
选择器是JQ的根本,对事件的处理,遍历DOM和Ajax的操作都依赖于选择器
优点:写法简洁;完善的事件处理机制
①基本选择器( $(“”) )
选择器
1).#id
2).class
3).element
4). * 匹配所有的元素
5). selector1 , selector2,……. 将每个选择器匹配到的元素合并后一起返回
②层次选择器
如果想通过DOM
元素之间的层次关系来获取特定的元素,例如后代元素、子元素、兄弟元素等
1).$(“ancestor descendant”) 获取ancestor后面的所有后代元素
2). $(“parent > child”) 获取parent后面的子元素
3).$(“prev + next”) 获取prev 元素的下一个元素
4).$(“prev ~ next”) 获取prev后面的所有元素
注意:JQ方法siblings()选择后面所有的同辈元素;nextAll()方法选择后面所有元素
例:
选择id为two的元素调用siblings方法,获取所有兄弟div元素,并将其背景色置蓝。
例2:
选择id为one的元素,调用nextAll()方法和过滤器:first,获取后面元素中的第一个span 元素,置蓝。
③过滤选择器:通过过滤规则筛选所需的Dom元素
根据不同的过滤规则,过滤选择器可以分为:基本过滤、内容过滤、可见性过滤、属性过滤、子元素过滤和表单元素过滤器
1).基本过滤器
:first :last
:not(selector) 去除所有与给定选择器匹配的元素
:header 选取所有标题元素
:animated 选取所有正在执行动画的所有元素
:even 选取索引时偶数的所有元素
:odd 选取索引时奇数的所有元素
:eq(index) 选取索引等于index的元素
:gt(index) 选取索引大于index的元素
:lt(index) 选取索引小于index的元素
2).内容过滤选择器:过滤规则体现在其所包含的子元素和文本内容上
:contain(text) 选择含有文本内容text的元素
:empty 选择不含子元素或者文本内容的空元素
:has(selector) 选择与选择器所匹配的元素
:parent 选择含有子元素或者文本的元素
3).可见性过滤选择器
:hidden 选取所有不可见元素
:visible 选取所有可见元素
4).属性过滤选择器:通过元素的属性获取响应元素
[attribute] 选择含有某个属性的元素
[attribute=value]选择属性值等于value的元素
[attribute!=value]选择属性值不等于value的元素
[attribute^=value]选择属性值以value开头的元素
[attribute$=value]选择属性值以value结尾的元素
[attribute*=value]选择属性值包含value的元素
[selector1][selector2]…..用多个属性选择器合并成一个复合属性选择器
5).子元素过滤器
:first-child 选取每个父元素的第一个子元素
:last-child 选取每个父元素的最后一个子元素
:only-child 如果某个元素是其父元素的唯一子元素,那么匹配
:nth-child(index/odd/even/equation) 选取父元素中第index个子元素或奇偶元素
6).表单过滤选择器
①表单对象过滤选择器
:enabled
:disabled
:checked
:selected
②表单选择器
:input
:text
:password
:radio
:checkbox
:sbmit
:image
:reset
:button
:file
:hidden
注意:
选取被选中的select的option需要用选取子节点的方式
JQ的一些方法
①val() 获取或设置表单元素的value属性值
②attr() 与 val方法类似
attr(name,value) 为name属性赋值value
attr(name) 获取name属性的值
③each() 对jquery对象进行遍历,其参数是function,函数内部的this是正在遍历的DOM对象
① JQuery对象就是通过JQuery( $(DOM) )包装DOM对象后产生的象,
② JQuery对象是数组,可以通过角标【index】的方法获取到DOM
对象,(注意如果获取的是JQuer对象需要在变量前面加$)
//JQuery对象 var $cr = $("cr") //DOM对象 var cr = $cr[0];
JQuery简单的helloworld
<html> <head> <meta < 4000 span class="hljs-attribute">charset="UTF-8"> <title></title> //导入JQ <script type="text/javascript" src="js/jquery-1.7.2.js" ></script> <script type="text/javascript" charset="utf-8"> //$(function(){})相当于window.onload $(function(){ //1.选取button:$("button") //2.为button对象添加响应函数:$("button").click(function(){}) $("button").click(function(){ //3.helloworld alert("helloworld"); //调用JQ方法,得到button的文本值 alert($(this).text()); }); ---------- ---------- //jQuery 和 DOM 对象 //1. 由 jQuery 对象转为 DOM 对象 //1). 获取一个 jQuery 对象 var $btn = $("button"); //2). jQuery 对象是一个数组. //alert($btn.length); //3). 可以通过数组的下标转为 DOM 对象 //alert($btn[1].firstChild.nodeValue); //2. 由 DOM 对象转为 jQuery 对象 //1). 选取一个 DOM 对象 var btn = document.getElementById("btn"); //2). 把 DOM 对象转为一个 jQuery 对象: 使用 $() 进行包装 alert("--" + $(btn).text()) }) </script> </head> <body> <button id="1">Click</button> <button id="2">Click2</button> </body> </html> ----------
选择器是JQ的根本,对事件的处理,遍历DOM和Ajax的操作都依赖于选择器
优点:写法简洁;完善的事件处理机制
①基本选择器( $(“”) )
选择器
1).#id
2).class
3).element
4). * 匹配所有的元素
5). selector1 , selector2,……. 将每个选择器匹配到的元素合并后一起返回
②层次选择器
如果想通过DOM
元素之间的层次关系来获取特定的元素,例如后代元素、子元素、兄弟元素等
1).$(“ancestor descendant”) 获取ancestor后面的所有后代元素
2). $(“parent > child”) 获取parent后面的子元素
3).$(“prev + next”) 获取prev 元素的下一个元素
4).$(“prev ~ next”) 获取prev后面的所有元素
注意:JQ方法siblings()选择后面所有的同辈元素;nextAll()方法选择后面所有元素
例:
$("#two").siblings("div").css("background","blue");
选择id为two的元素调用siblings方法,获取所有兄弟div元素,并将其背景色置蓝。
例2:
$("#one").nextAll("span:first").css("background","orange");
选择id为one的元素,调用nextAll()方法和过滤器:first,获取后面元素中的第一个span 元素,置蓝。
③过滤选择器:通过过滤规则筛选所需的Dom元素
根据不同的过滤规则,过滤选择器可以分为:基本过滤、内容过滤、可见性过滤、属性过滤、子元素过滤和表单元素过滤器
1).基本过滤器
:first :last
:not(selector) 去除所有与给定选择器匹配的元素
:header 选取所有标题元素
:animated 选取所有正在执行动画的所有元素
:even 选取索引时偶数的所有元素
:odd 选取索引时奇数的所有元素
:eq(index) 选取索引等于index的元素
:gt(index) 选取索引大于index的元素
:lt(index) 选取索引小于index的元素
2).内容过滤选择器:过滤规则体现在其所包含的子元素和文本内容上
:contain(text) 选择含有文本内容text的元素
:empty 选择不含子元素或者文本内容的空元素
:has(selector) 选择与选择器所匹配的元素
:parent 选择含有子元素或者文本的元素
3).可见性过滤选择器
:hidden 选取所有不可见元素
:visible 选取所有可见元素
4).属性过滤选择器:通过元素的属性获取响应元素
[attribute] 选择含有某个属性的元素
[attribute=value]选择属性值等于value的元素
[attribute!=value]选择属性值不等于value的元素
[attribute^=value]选择属性值以value开头的元素
[attribute$=value]选择属性值以value结尾的元素
[attribute*=value]选择属性值包含value的元素
[selector1][selector2]…..用多个属性选择器合并成一个复合属性选择器
5).子元素过滤器
:first-child 选取每个父元素的第一个子元素
:last-child 选取每个父元素的最后一个子元素
:only-child 如果某个元素是其父元素的唯一子元素,那么匹配
:nth-child(index/odd/even/equation) 选取父元素中第index个子元素或奇偶元素
6).表单过滤选择器
①表单对象过滤选择器
:enabled
:disabled
:checked
:selected
②表单选择器
:input
:text
:password
:radio
:checkbox
:sbmit
:image
:reset
:button
:file
:hidden
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <script type="text/javascript" src="js/jquery-1.7.2.js" ></script> <script> $(function(){ $("#btn1").click(function(){ //使得所有的单行文本框的value的值变为“中国” alert($(":text:enabled").length); alert($(":text:enabled").val()); $(":text:enabled").val("中国"); }); $("#btn2").click(function(){ //使得所有不可用的单行文本框的value值变为美国 $(":text:disabled").val("美国"); }); $("#btn3").click(function(){ alert($(":checkbox[name='check']:checked").length); }); $("#btn5").click(function(){ //多选框 //实际被选择的不是 select, 而是 select 的 option 子节点 //所以要加一个 空格 var len = $("select :selected").length; alert(len); //因为 $("select :selected") 选择的是一个数组 //当该数组中有多个元素时, 通过 .val() 方法就只能获取第一个被选择的值了. //alert($("select :selected").val()); //jQuery 对象遍历的方式使 each, 在 each 内部的 this 是正在 //得到的 DOM 对象, 而不是一个 jQuery 对象 $("select :selected").each(function(){ alert(this.value); }); }); }) </script> </head> <body> <h2>表单属性过滤器</h2> <button id="btn1">对表单内的可用input赋值</button> <button id="btn2">对表单内不可用input赋值</button> <br /> <button id="btn3">获取多选框内的个数</button> <button id="btn4">获取多选框内的值</button> <br /> <button id="btn5">获取下拉选框中的内容</button> <br /> <h3>表单</h3> <form id="form1" action="#"> 可用元素:<input name="yes" value="可用文本框1" /> 不可用元素:<input name="no" disabled="disabled" value="不可用文本框1" /><br /> 可用元素:<input name="yes1" value="可用文本框2" /> 不可用元素:<input name="no" disabled="disabled" value="不可用文本框2" /> </form> <h3>多选框</h3> <input type="checkbox" name="check" checked="checked" value="check1" />check1 <input type="checkbox" name="check" value="check2" />check2 <input type="checkbox" name="check" checked="checked" value="check3" />check3 <input type="checkbox" name="check" value="check4" />check4 <input type="checkbox" name="check" checked="checked" value="check5" />check5 <br /><br /> <h3>下拉列表</h3> <select name="select" multiple="multiple" style="background-color: deepskyblue;"> <option>新余</option> <option selected="selected">南昌</option> <option>上饶</option> <option selected="selected">鹰潭</option> <option>景德镇</option> </select> </body> </html>
注意:
选取被选中的select的option需要用选取子节点的方式
$("select :selected").each(function(){ });
JQ的一些方法
①val() 获取或设置表单元素的value属性值
//设置值 $(":text:enabled").val("中国") //获取值 $(":text:enabled").val()
②attr() 与 val方法类似
attr(name,value) 为name属性赋值value
attr(name) 获取name属性的值
③each() 对jquery对象进行遍历,其参数是function,函数内部的this是正在遍历的DOM对象
$("select :selected").each(function(){ alert($(this).val()); });
相关文章推荐
- Jquery的bootstrap在线文本编辑器插件Summernote
- [jQuery Note]jQuery element properties and attributes
- Jquery note
- jQueryInAction Reading Note 7.
- 基于jquery的bootstrap在线文本编辑器插件Summernote (转)
- jQuery study note 5 (第一阶段终)
- [jQuery Note]jQuery Event Handle-JavaScript Object fundamentals
- Note 1 : JQuery 性能优化
- Bootstrap-基于jquery的bootstrap在线文本编辑器插件Summernote
- JQuery leaning note1
- [JQuery Note]Selector 1
- [jQuery Note]jQuery JavaScript Object fundamentals extend
- jQueryInAction Reading Note 3.
- [JQuery Note]Selector 2
- jQuery页面元素操作(note)
- jQueryInAction Reading Note 5.
- js/jQuery note
- jQuery study note 3
- [jQuery Note]jQuery Event
- 基于jquery的bootstrap在线文本编辑器插件Summernote (转)