All Selector (“*”)
警告: 除非被它自己使用,否则 * 选择器或通用选择器,其速度是极其慢的。
Class Selector (“.class”)
描述: 选择给定样式类名的所有元素。
对于类选择器,如果浏览器支持,jQuery使用JavaScript的原生getElementsByClassName()
函数来实现。
<script>$(".myClass").css("border","3px solid red");</script>
ID Selector (“#id”)
描述: 选择一个具有给定id属性的单个元素。
对于ID选择,jQuery使用JavaScript函数document.getElementById()
,这是非常有效的。当另一个选择是附加到ID选择器,比如h2#pageTitle
,在确定作为匹配的元素前,jQuery执行一个额外的检查。
调用 jQuery()
(或 $()
) 带上一个选择器作为它的参数,将返回一个jQuery对象包含零个或一个DOM元素的集合。
任何时候,记得作为一个开发者,你的时间通常是最宝贵的资源。不要一味的注重优化选择器的效率,除非它有很明显的效率问题,性能需要改进。
每个id
值在一个文件中只能使用一次。如果多个元素分配了相同的ID,将只匹配该ID选择集合的第一个DOM元素。但这种行为不应该发生;有超过一个元素的文件使用相同的ID是无效的。
<script>$("#myDiv").css("border","3px solid red");</script>
如果ID包含点号或冒号字符字符,你必须将这些字符反斜杠转义。
<div id="myID.entry[0]">id="myID.entry[0]"</div> <div id="myID.entry[1]">id="myID.entry[1]"</div> <div id="myID.entry[2]">id="myID.entry[2]"</div> <script>$("#myID\.entry\[1\]").css("border","3px solid red");</script>
Multiple Selector (“selector1, selector2, selectorN”)
描述: 将每一个选择器匹配到的元素合并后一起返回。
selector1: 任何有效的选择
selector2: 其他有效的选择
selectorN: 更多有效的选择只要你喜欢。
<script>$("div,span,p.myClass").css("border","3px solid red");</script>
<!DOCTYPE html> <html> <head> <style> b { color:red; font-size:16px; display:block; clear:left; } div,span,p { width: 40px; height: 40px; float:left; margin: 10px; background-color: blue; padding:3px; color:white; } </style> <script src="http://code.jquery.com/jquery-latest.js"></script> </head> <body> <span>span</span> <p>p</p> <p>p</p> <div>div</div> <span>span</span> <p>p</p> <div>div</div> <b></b> <script> var list = $("div,p,span").map(function () { return this.tagName; }).get().join(", "); $("b").append(document.createTextNode(list)); </script> </body> </html>