jquery有几种选择器

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jquery有几种选择器相关的知识,希望对你有一定的参考价值。

参考技术A

jQuery选择器一般分为四种

一、基本选择器

基本选择器是jQuery中最常用也是最简单的选择器,它通过元素的id、class和标签名等来查找DOM元素。

1、ID选择器 #id

描述:根据给定的id匹配一个元素, 返回单个元素(注:在网页中,id名称不能重复)

示例:$("#test") 选取 id 为 test 的元素

2、类选择器 .class

描述:根据给定的类名匹配元素,返回元素集合

示例:$(".test") 选取所有class为test的元素

3、元素(标签)选择器 element

描述:根据给定的元素名匹配元素,返回元素集合

示例:$("p") 选取所有的<p>元素 $("div") :选取所有的div标签

4、*

描述:匹配所有元素,返回元素集合

示例:$("*") 选取所有的元素

5、selector1,selector2,...,selectorN(并集选择器)

描述:将每个选择器匹配到的元素合并后一起返回,返回合并后的元素集合

示例:$("p,span,p.myClass") 选取所有<p>,<span>和class为myClass的<p>标签的元素集合

二、层次选择器

层次选择器根据层次关系获取特定元素。

1、后代选择器

示例:$("p span") 选取<p>元素里的所有的<span>元素(注:后代选择器选择父元素所有指定选择的元素,不管是儿子级,还是孙子级)

2、子选择器 $("parent>child")

示例:$("p>span") 选择<p>元素下的所有<span>元素 (注:子选择器只选择直属于父元素的子元素)

3、同辈选择器 $("prev+next")

描述:选取紧接在prev元素后的next元素,返回元素集合

示例:$(".one+p") 选取class为one的下一个<p>同辈元素集合

4、同辈选择器 $("prev~siblings")

描述:选取prev元素后的所有siblings元素,返回元素集合

示例:$("#two~p")选取id为two的元素后所有<p>同辈元素集合

三、过滤选择器

1>基本过滤选择器

1、 :first

描述:选取第一个元素,返回单个元素

示例:$("p:first") 选取所有<p>元素中第一个<p>元素

2、 :last

描述:选取最后一个元素,返回单个元素

示例:$("p:last") 选取所有<p>元素中最后一个<p>元素

3、 :not(selector)

描述:去除所有与给定选择器匹配的元素,返回元素集合

示例:$("input:not(.myClass)") 选取class不是myClass的<input>元素

4、 :even

描述:选取索引是偶数的所有元素,索引从0开始,返回元素集合

5、 :odd

描述:选取索引是奇数的所有元素,索引从0开始,返回元素集合

6、 :eq(index)

描述:选取索引等于index的元素,索引从0开始,返回单个元素

7、 :gt(index)

描述:选取索引大于index的元素,索引从0开始,返回元素集合

8、 :lt(index)

描述:选取索引小于于index的元素,索引从0开始,返回元素集合

9、 :focus

描述:选取当前获取焦点的元素

2>内容过滤选择器

1、:contains(text)

描述:选取含有文本内容为text的元素,返回元素集合

示例:$("p:contains('我')") 选取含有文本“我”的元素

2、:empty

描述:选取不包含子元素或者文本元素的空元素,返回元素集合

示例:$("p:empty") 选取不包含子元素或者文本元素的空<p>元素(<p></p>)

3、:has(selector)

描述:选取含有选择器所匹配的元素的元素,返回元素集合

示例:$("p:has(p)") 选取含有<p>元素的<p>元素(<p><p/></p>)

4、:parent

描述:选取含有子元素或者文本的元素,返回元素集合

示例:$("p:parent") 选取含有子元素或者文本元素的<p>元素(<p><p/></p>或者<p>文本</p>)

3>可见性过滤选择器

1、:hidden

描述:选取所有不可见的元素,返回元素集合

2、:visible

描述:选取所有可见的元素,返回元素集合

4>属性过滤选择器(返回元素集合)

1、[attribute]

示例:$("p[id]") 选取拥有id属性的p元素

2、[attribute=value]

示例:$("input[name=text]") 选取拥有name属性等于text的input元素

3、[attribute!=value]

示例:$("input[name!=text]") 选取拥有name属性不等于text的input元素

4、[attribute^=value]

示例:$("input[name^=text]") 选取拥有name属性以text开始的input元素

5、[attribute$=value]

示例:$("input[name$=text]") 选取拥有name属性以text结束的input元素

6、[attribute*=value]

示例:$("input[name*=text]") 选取拥有name属性含有text的input元素

7、[attribute~=value]

示例:$("input[class~=text]") 选取拥有class属性以空格分割的值中含有text的input元素

8、[attribute1][attribute2][attributeN]

描述:合并多个属性过滤选择器

5>表单对象属性过滤选择器(返回元素集合)

1、:enabled

描述:选取所有可用元素

2、:disabled

描述:选取所有不可用元素

3、:checked

描述:选取所有被选中的元素(单选框,复选框)

示例:$("input:checked") 选取所有被选中的<input>元素

4、:selected

描述:选取所有被选中的选项元素(下拉列表)

示例:$("select option:selected") 选取所有被选中的选项元素

四、表单选择器(返回元素集合,使用相似)

1、:text

描述:选择所有的单行文本框

示例:$(":text")选取所有的单行文本框

2、:password

描述:选择所有的密码框

3、:button

描述:选择所有的按钮

4、:checkbox

描述:选择所有的多选框

JQuery有几种选择器?

很多种,大概归纳为9种。
(1)基本
#id
element
.class
*
selector1,selector2,selectorN

(2)层次选择器:
ancestor descendant
parent > child
prev + next
prev ~ siblings

(3)基本过滤器选择器
:first
:last
:not
:even
:odd
:eq
:gt
:lt
:header
:animated

(4)内容过滤器选择器
:contains
:empty
:has
:parent

(5)可见性过滤器选择器
:hidden
:visible

(6)属性过滤器选择器
[attribute]
[attribute=value]
[attribute!=value]
[attribute^=value]
[attribute$=value]
[attribute*=value]
[attrSel1][attrSel2][attrSelN]

(7)子元素过滤器选择器
:nth-child
:first-child
:last-child
:only-child

(8)表单选择器
:input
:text
:password
:radio
:checkbox
:submit
:image
:reset
:button
:file
:hidden

(9)表单过滤器选择器
:enabled
:disabled
:checked
:selected
参考技术A 太多了,不好一一说,你参考文档
http://api.jquery.com/category/selectors/

一般我们用的比较多的应该是
ID选择器$("#id")
样式选择器 $(".Clssname")
元素选择器,如$("P") $("BODY")
参考技术B jQuery 元素选择器
jQuery 使用 CSS 选择器来选取 HTML 元素。

$("p") 选取 元素。

$("p.intro") 选取所有 class="intro" 的 元素。

$("p#demo") 选取 id="demo" 的第一个 元素。
jQuery 属性选择器
jQuery 使用 XPath 表达式来选择带有给定属性的元素。

$("[href]") 选取所有带有 href 属性的元素。

$("[href='#']") 选取所有带有 href 值等于 "#" 的元素。

$("[href!='#']") 选取所有带有 href 值不等于 "#" 的元素。

$("[href$='.jpg']") 选取所有 href 值以 ".jpg" 结尾的元素。
jQuery CSS 选择器
jQuery CSS 选择器可用于改变 HTML 元素的 CSS 属性。

$("p").css("background-color","red");

以上是关于jquery有几种选择器的主要内容,如果未能解决你的问题,请参考以下文章

jquery中有哪几种类型的选择器?

jQuery基础 ——样式篇(jQuery选择器)

jquery 选择器 多个

jquery标签选择器怎么循环

jquery选择器都有哪些

jquery选择器中加变量参数