jquery的选择器有哪些
发布网友
发布时间:2022-05-01 15:39
我来回答
共4个回答
懂视网
时间:2022-04-13 05:10
基础选择器是jQuery中最常用选择器,也是最简单的选择器,它通过元素id、class和标签名等来查找DOM元素。
id选择器
id选择器$(‘#id’)通过给定的id匹配一个元素,返回单个元素
<p id="test">测试元素</p><script>//选择id为test的元素并设置其字体颜色为红色$('#test').css('color','red');</script>
对应DOM的getElementById()方法,而jQuery内部也使用该方法来处理ID的获取
document.getElementById('test').style.color = 'red';
元素选择器
元素选择器$(‘element’)根据给定的元素名匹配元素,并返回符合条件的集合元素
<p>1</p>
<p>2</p>
<script>//选择标签名为p的元素并设置其字体颜色为红色$('p').css('color','red');
</script>
对应DOM的getElementsByTagName()方法,而jQuery内部也使用该方法来处理元素名的获取
Array.prototype.forEach.call(document.getElementsByTagName('p'),function(item,index,arr){
item.style.color = 'red';
});
类选择器
类选择器$(‘.class’)根据给定的类名匹配元素,并返回符合条件的集合元素
<p class="test">1</p>
<p class="test">2</p>
<script>//选择class为test的元素并设置其字体颜色为红色$('.test').css('color','red');
</script>
对应DOM的getElementsByClassName()方法,而jQuery内部也使用该方法来处理类名的获取
Array.prototype.forEach.call(document.getElementsByClassName('test'),function(item,index,arr){
item.style.color = 'red';
});
通配选择器
通配选择器$(‘*’)匹配文档中所有的元素,并返回集合元素
$('*').css('margin','0');
对应DOM的document.all集合
Array.prototype.forEach.call(document.all,function(item,index,arr){
item.style.margin = 0;});
或者参数为通配符*的getElementsByTagName()方法
Array.prototype.forEach.call(document.getElementsByTagName('*'),function(item,index,arr){
item.style.margin = 0;});
群组选择器
群组选择器$(‘selector1,selector2,…’)将每一个选择器匹配到的元素合并后一起,并返回集合元素
<p class="a">1</p>
<span id="b">2</span>
<a href="#">3</a><script>//选择符合条件的元素并设置其字体颜色为红色$('.a,#b,a').css('color','red');
</script>
对应DOM的querySelectorAll()选择器
Array.prototype.forEach.call(document.querySelectorAll('.a,#b,a'),function(item,index,arr){
item.style.color = 'red';
});
热心网友
时间:2022-04-13 02:18
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
热心网友
时间:2022-04-13 03:36
$("#myELement")
选择id值等于myElement的元素,id值不能重复在文档中只能有一个id值是myElement所以得到的是唯一的元素
$("div")
选择所有的div标签元素,返回div元素数组
$(".myClass")
选择使用myClass类的css的所有元素
$("*")
选择文档中的所有的元素,可以运用多种的选择方式进行联合选择:例如$("#myELement,div,.myclass")
层叠选择器:
$("form
input")
选择所有的form元素中的input元素
$("#main
>
*")
选择id值为main的所有的子元素
$("label
+
input")
选择所有的label元素的下一个input元素节点,经测试选择器返回的是label标签后面直接跟一个input标签的所有input标签元素
$("#prev
~
div")
同胞选择器,该选择器返回的为id为prev的标签元素的所有的属于同一个父元素的div标签
基本过滤选择器:
$("tr:first")
选择所有tr元素的第一个
$("tr:last")
选择所有tr元素的最后一个
$("input:not(:checked)
+
span")
过滤掉:checked的选择器的所有的input元素
$("tr:even")
选择所有的tr元素的第0,2,4...
...个元素(注意:因为所选择的多个元素时为数组,所以序号是从0开始)
$("tr:odd")
选择所有的tr元素的第1,3,5...
...个元素
$("td:eq(2)")
选择所有的td元素中序号为2的那个td元素
$("td:gt(4)")
选择td元素中序号大于4的所有td元素
$("td:ll(4)")
选择td元素中序号小于4的所有的td元素
$(":header")
$("div:animated")
内容过滤选择器:
$("div:contains('John')")
选择所有div中含有John文本的元素
$("td:empty")
选择所有的为空(也不包括文本节点)的td元素的数组
$("div:has(p)")
选择所有含有p标签的div元素
$("td:parent")
选择所有的以td为父节点的元素数组
可视化过滤选择器:
$("div:hidden")
选择所有的被hidden的div元素
$("div:visible")
选择所有的可视化的div元素
属性过滤选择器:
$("div[id]")
选择所有含有id属性的div元素
$("input[name='newsletter']")
选择所有的name属性等于'newsletter'的input元素
$("input[name!='newsletter']")
选择所有的name属性不等于'newsletter'的input元素
$("input[name^='news']")
选择所有的name属性以'news'开头的input元素
$("input[name$='news']")
选择所有的name属性以'news'结尾的input元素
$("input[name*='man']")
选择所有的name属性包含'news'的input元素
$("input[id][name$='man']")
可以使用多个属性进行联合选择,该选择器是得到所有的含有id属性并且那么属性以man结尾的元素
子元素过滤选择器:
$("ul
li:nth-child(2)"),$("ul
li:nth-child(odd)"),$("ul
li:nth-child(3n
+
1)")
$("div
span:first-child")
返回所有的div元素的第一个子节点的数组
$("div
span:last-child")
返回所有的div元素的最后一个节点的数组
$("div
button:only-child")
返回所有的div中只有唯一一个子节点的所有子节点的数组
表单元素选择器:
$(":input")
选择所有的表单输入元素,包括input,
textarea,
select
和
button
$(":text")
选择所有的text
input元素
$(":password")
选择所有的password
input元素
$(":radio")
选择所有的radio
input元素
$(":checkbox")
选择所有的checkbox
input元素
$(":submit")
选择所有的submit
input元素
$(":image")
选择所有的image
input元素
$(":reset")
选择所有的reset
input元素
$(":button")
选择所有的button
input元素
$(":file")
选择所有的file
input元素
$(":hidden")
选择所有类型为hidden的input元素或表单的隐藏域
表单元素过滤选择器:
$(":enabled")
选择所有的可操作的表单元素
$(":disabled")
选择所有的不可操作的表单元素
$(":checked")
选择所有的被checked的表单元素
$("select
option:selected")
选择所有的select
的子元素中被selected的元素
选取一个
name
为”S_03_22″的input
text框的上一个td的text值
$(”input[@
name
=S_03_22]“).parent().prev().text()
名字以”S_”开始,并且不是以”_R”结尾的
$(”input[@
name
^='S_']“).not(”[@
name
$='_R']“)
一个名为
radio_01的radio所选的值
$(”input[@
name
=radio_01][@checked]“).val();
$("A
B")
查找A元素下面的所有子节点,包括非直接子节点
$("A>B")
查找A元素下面的直接子节点
$("A+B")
查找A元素后面的兄弟节点,包括非直接子节点
$("A~B")
查找A元素后面的兄弟节点,不包括非直接子节点
热心网友
时间:2022-04-13 05:10
jquery的选择器有很多大概有10个以上吧