jQuery---过滤选择器

4、过滤选择器
过滤选择器主要是通过特定的过滤规则来筛选出所需的DOM元素,过滤规则与CSS
中的伪类选择器语法相同,即选择器都以一个冒号(:)开头。按照不同的过滤规则,
过滤选择器可以分为基本过滤、内容过滤、可见性过滤、属性过滤、子元素过滤和表
单对象属性过滤选择器。

1)基本过滤选择器
:first、:last、
:not(selector)【去除所有与给定选择器匹配的元素eg.$("input:not(.myBox)")
选取class不是myBox的input元素】、
:even【索引值是偶数,0开始】、
:odd【索引值是奇数,0开始】、
:eq(index)【选取指定索引值的元素】、

eg.$("ul li:eq(1)")获取li里的第二个节点;

   $("ul li:eq(0)").text();获取元素的第一个节点的文本;
:gt(index)【选取索引大于index的元素,0开始】、
:lt(index)【选取索引小于index的元素,0开始】
:header【选取所有的标题元素,如h1~h6】、
:animation【选取当前正在执行动画的所有元素】


2)内容过滤选择器:过滤规则主要体现在它所包含的子元素或文本内容上。
:contains(text)【选取文本内容为“text”的元素,eg.$("div:contains('我
的')")】
:empty【选取不包含子元素或文本的空元素】
:has(selector)【选取含有选择器所匹配的元素的元素】
:parent【选取含有子元素或文本的元素】


3)可见性过滤选择器:可见性过滤选择器是根据元素的可见和不可见状态来选择相
应的元素。

:hidden【选取所有不可见的元素】

$(":hidden")等价于 $("input:hidden"),<div style="display:none;">,<div
style="visibility:hidden;">

:visible【选取所有可见的元素】 $("div:visible")


4)属性过滤选择器(属性过滤选择器的过滤规则是通过元素的属性来获取相应的元素
。)

[attribute]【选取拥有此属性的元素】$("div[id]")
[attribute=value]【选取属性值为value的元素】$("div[title=test]")
[attribute!=value]【选取属性值不等于value的元素】$("div[title!=test]")
[attribute^=value]【选取属性值以value开始的元素】$("div[title^=test]")
[attribute$=value]【选取属性值以value结束的元素】$("div[title$=test]")
[attribute*=value]【选取属性值含有value值的元素】$("div[title*=test]")
[selector1][selector2][selectorN]【用属性选择器合并成一个复合的属性选择器
,满足多个条件,每选择一次,缩小一次范围】
$("div[id][titlt$='test']"):选取有属性id且属性title以test结束的div元素


5)子元素过滤选择器(关键:将元素的父元素和子元素区分清楚,)
:nth-child(index/even/odd/equation)【选取每个父元素下的第index个子元素或
奇偶元素,index从1算起】
:first-child【选取每个父元素的第1个子元素】
:last-child【选取每个父元素的最后一个子元素】
:only-child【若某个元素是它的父元素中唯一的子元素,则会被匹配,若含有其他
元素则不会被匹配】


6)表单对象属性过滤选择器
:enabled【选取所有可用元素】
:disabled【选取所有不可用元素】
:checked【选取所有被选中元素,单选或复选框】
:selected【选取所有被选中的选项元素,下拉列表】

 

 

 

 

 

posted on 2018-10-16 10:04  小虾米吖~  阅读(332)  评论(0编辑  收藏  举报