jQuery选择器概述:
选择器是jQuery的根基,在jQuery中对事件处理、遍历DOM和Ajax操作都依赖于选择器。
jQuery选择器:
| * | $("*") | 所有元素 |
| #id | $("#lastname") | id="lastname" 的元素 |
| .class | $(".intro") | 所有 class="intro" 的元素 |
| element | $("p") | 所有 <p> 元素 |
| .class.class | $(".intro.demo") | 所有 class="intro" 且 class="demo" 的元素 |
| :first | $("p:first") | 第一个 <p> 元素 |
| :last | $("p:last") | 最后一个 <p> 元素 |
| :even | $("tr:even") | 所有偶数 <tr> 元素 |
| :odd | $("tr:odd") | 所有奇数 <tr> 元素 |
| :eq(index) | $("ul li:eq(3)") | 列表中的第四个元素(index 从 0 开始) |
| :gt(no) | $("ul li:gt(3)") | 列出 index 大于 3 的元素 |
| :lt(no) | $("ul li:lt(3)") | 列出 index 小于 3 的元素 |
| :not(selector) | $("input:not(:empty)") | 所有不为空的 input 元素 |
| :header | $(":header") | 所有标题元素 <h1> - <h6> |
| :animated | 所有动画元素 | |
| :contains(text) | $(":contains('W3School')") | 包含指定字符串的所有元素 |
| :empty | $(":empty") | 无子(元素)节点的所有元素 |
| :hidden | $("p:hidden") | 所有隐藏的 <p> 元素 |
| :visible | $("table:visible") | 所有可见的表格 |
| s1,s2,s3 | $("th,td,.intro") | 所有带有匹配选择的元素 |
| [attribute] | $("[href]") | 所有带有 href 属性的元素 |
| [attribute=value] | $("[href='#']") | 所有 href 属性的值等于 "#" 的元素 |
| [attribute!=value] | $("[href!='#']") | 所有 href 属性的值不等于 "#" 的元素 |
| [attribute$=value] | $("[href$='.jpg']") | 所有 href 属性的值包含以 ".jpg" 结尾的元素 |
| :input | $(":input") | 所有 <input> 元素 |
| :text | $(":text") | 所有 type="text" 的 <input> 元素 |
| :password | $(":password") | 所有 type="password" 的 <input> 元素 |
| :radio | $(":radio") | 所有 type="radio" 的 <input> 元素 |
| :checkbox | $(":checkbox") | 所有 type="checkbox" 的 <input> 元素 |
| :submit | $(":submit") | 所有 type="submit" 的 <input> 元素 |
| :reset | $(":reset") | 所有 type="reset" 的 <input> 元素 |
| :button | $(":button") | 所有 type="button" 的 <input> 元素 |
| :image | $(":image") | 所有 type="image" 的 <input> 元素 |
| :file | $(":file") | 所有 type="file" 的 <input> 元素 |
| :enabled | $(":enabled") | 所有激活的 input 元素 |
| :disabled | $(":disabled") | 所有禁用的 input 元素 |
| :selected | $(":selected") | 所有被选取的 input 元素 |
| :checked | $(":checked") | 所有被选中的 input 元素 |
下面先简单介绍一下常用选择器的语法,如下:
1、类选择器HTML代码:<div class="mydiv"></div>Jquery获取对象:$(".mydiv")
2、ID选择器HTML代码:<div id="mydiv"></div>Jquery获取对象:$("#mydiv")
3、标签选择器HTML代码:<span></span>Jquery获取对象:$("span")
4、通配符选择器HTML代码:<div><span>文字</span><h1>标题</h1><p>段落</p></div>Jquery获取对象:$("div *"),获取div下的所有标签对象
5、同时定义多个选择器HTML代码:<div id="mydiv"></div><span class="other"></span>Jquery获取对象:$("#mydiv,.other"),注意有逗号隔开了
6、子选择器HTML代码:<h1><span></span></h1>Jquery获取对象:$("h1 > span"),需要注意的是,这种方式只会获取H1下面的SPAN,如果H1的孙子还有SPAN,将不会进行查找,这种写法仅用于查找子这一代
7、下一个兄弟选择器HTML代码:<h1></h1><span>1</span><span>2</span>Jquery获取对象:$("h1").next("span"),该用法只会查找到<span>1</span>的元素,即H1的下一个兄弟
8、同级选择器HTML代码:<h1></h1><span></span><p></p><a></a>Jquery获取对象:$("h1").nextAll(),获取h1的所有同级对象
9、选取第一个和最后一个选择器HTML代码:<p>段落1</p><p>段落2</p><p>段落3</p>Jquery获取对象:$("p:first")获取第一个P标签,$("p:last")获取最后一个P标签
10、取非选择器HTML代码:<div class="mydiv"></div><div class="demo"></div>Jquery获取对象:$("div:not(.mydiv)"),只会选择class为demo的对象
基本选择器:
基本选择器可以分为三种,分别为:标签选择器、类选择器、ID选择器、并集选择器、交集选择器和全局选择器。
层次选择器:
层次选择器有四种,分别为:后代选择器、子选择器、相邻选择器和同辈选择器,常用的是后代选择器和子选择器。
属性选择器:
用于选择包含给定属性的所有元素。
格式:$("selector[attribute]")
例: $("div[id]")
从文档中选择包含id属性的div元素。
过滤选择器:
过滤选择器可以使用元素的索引值,内容,属性,子元素位置,表单域属性以及可见性作为筛选条件获取相关元素。
基本过滤选择器:
根据索引值对元素进行筛选,类似于CSS的伪类选择器,以冒号(:)开头;并且要和另一选择器一起使用。
可见性过滤选择器:
jQuery选择器出了可以通过CSS选择器、位置选取元素等,还能通过元素的显示状态,即元素显示或隐藏来选取元素。
:visible:选取所有可见的元素。
:hidden:选取所有隐藏的元素。
jQuery重点注意事项
1)选择器中包含特殊符号
2)选择器中含有空格