jQuery选择器(一)

本文详述jQuery选择器的使用方法与实例,涵盖基本选择器、复合选择器及特殊选择器,通过具体代码展示如何操作DOM元素,实现动态网页交互与布局优化。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文介绍jQuery选择器

$('#id').siblings()   当前元素所有的兄弟节点
$('#id').prev()       当前元素前一个兄弟节点
$('#id').next()       当前元素之后第一个兄弟节点
$('#id').nextAll()    当前元素之后所有的兄弟节点
$('#id').prevAll()   当前元素之前所有的兄弟节点
$('#id').nextAll()    当前元素之后所有的兄弟节点



jQuery选择器

选择器

返回值匹配元素jQuery代码

#id

Array<Element>

 $("#myDiv")

*

Array<Element(s)>

 $("*")

.class

Array<Element(s)>

 $(".myClass")

:animated

Array<Element(s)>

匹配所有正在执行动画效果的元素
$("#run").click(function(){
  $("div:not(:animated)").
animate({ left: "+=20" }, 1000);
});

:button

Array<Element(s)>

 $(":button")

:checkbox

Array<Element(s)>

 $(":checkbox")

:checked

Array<Element(s)>

匹配所有被选中元素(复选框、
单选框等,不包括select中的option)
$("input:checked")

:contains

Array<Element(s)>

匹配包含给定文本的元素
$("div:contains('John')")

:disabled

Array<Element(s)>

匹配所有不可用元素$("input:disabled")

:empty

Array<Element(s)>

匹配所有不包含子元素或者文本为空的元素
$("td:empty")

:enabled

Array<Element(s)>

匹配所有可用元素$("input:enabled")

:eq

Array<Element(s)>

匹配一个给定索引值的元素,从 0 开始计数$("tr:eq(1)")

:even

Array<Element(s)>

匹配所有索引值为偶数的元素,从 0 开始计数$("tr:even")

:file

Array<Element(s)>

匹配所有文件域$(":file")

first()

jQuery

获取第一个元素$('li').first()

:first-child

Array<Element(s)>

匹配第一个子元素
':first' 只匹配一个元素,而此选择符将为
每个父元素匹配一个子元素
$("ul li:first-child")

:gt

Array<Element(s)>

匹配所有大于给定索引值的元素从 0 开始计数$("tr:gt(0)")

:has

Array<Element(s)>

匹配含有选择器所匹配的元素的元素$("div:has(p)").addClass("test");

:header

Array<Element(s)>

匹配如 h1, h2, h3之类的标题元素$(":header").css("background", "#EEE");

:hidden

Array<Element(s)>

匹配所有不可见元素,或者type为hidden的元素$("tr:hidden") $("input:hidden")

:image

Array<Element(s)>

匹配所有图像域$(":image")

:input

Array<Element(s)>

匹配所有 input, textarea, select 和 button 元素$(":input")

last()

jQuery

获取最后一个元素
$('li').last()

:lt

Array<Element(s)>

匹配所有小于给定索引值的元素
$("tr:lt(2)")

:not

Array<Element(s)>

去除所有与给定选择器匹配的元素在jQuery 1.3中,已经支持复杂选择器了(例如:not(div a) 和 :not(div,a))$("input:not(:checked)")

:nth-child

Array<Element(s)>

匹配其父元素下的第N个子或奇偶元素':eq(index)' 只匹配一个元素而这个将为每一个父元素匹配子元素:nth-child从1开始的,而:eq()是从0算起的!可以使用:nth-child(even):nth-child(odd):nth-child(3n):nth-child(2):nth-child(3n+1):nth-child(3n+2)$("ul li:nth-child(2)")

:odd

Array<Element(s)>

匹配所有索引值为奇数的元素,从 0 开始计数$("tr:odd")

:only-child

Array<Element(s)>

如果某个元素是父元素中唯一的子元素,那将会被匹配如果父元素中含有其他元素,那将不会被匹配。

在 ul 中查找是唯一子元素的 li

$("ul li:only-child")

:parent

Array<Element(s)>

匹配含有子元素或者有文本的元素查找所有含有子元素或者含有文本的 td 元素$("td:parent")

:password

Array<Element(s)>

匹配所有密码框$(":password")

:radio

Array<Element(s)>

匹配所有单选按钮$(":radio")

:reset

Array<Element(s)>

匹配所有重置按钮$(":reset")

:selected

Array<Element(s)>

匹配所有选中的option元素$("select option:selected")

:submit

Array<Element(s)>

匹配所有提交按钮$(":submit")

:text

Array<Element(s)>

匹配所有的单行文本框$(":text")

:visible

Array<Element(s)>

匹配所有的可见元素$("tr:visible")

[attribute!=value]

Array<Element(s)>

匹配所有不含有指定的属性,或者属性不等于特定值的元素。

此选择器等价于:not([attr=value])
要匹配含有特定属性但不等于特定值的元素,请使用[attr]:not([attr=value])


$("input[name!='newsletter']").attr("checked", true);

[attribute$=value]

Array<Element(s)>

匹配给定的属性是以某些值结尾的元素
<input name="newsletter" />
$("input[name$='letter']")

[attribute*=value]

Array<Element(s)>

匹配给定的属性是以包含某些值的元素
<input name="letterman2" />
$("input[name*='man']")

[attribute^=value]

Array<Element(s)>

匹配给定的属性是以某些值开始的元素
<input name="newsletter" />
$("input[name^='news']")

[attribute=value]

Array<Element(s)>

匹配给定的属性是某个特定值的元素
<input type="checkbox" name="newsletter"  />
$("input[name='newsletter']").attr("checked", true);

[attribute]

Array<Element(s)>

匹配包含给定属性的元素。注意,在jQuery 1.3中,前导的@符号已经被废除!如果想要兼容最新版本,只需要简单去掉@符号即可。
$("div[id]")

[selector1]

[selector2]

[selectorN]

Array<Element(s)>

复合属性选择器,需要同时满足多个条件时使用。
找到所有含有 id 属性,并且它的 name 属性是以 man 结尾的
$("input[id][name$='man']")
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值