好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

jQuery教程-jQuery基本选择器

我们在使用jQuery的时候,需要做的第一件事情就是选择被操作的页面元素。jQuery提供了强大的选择器语法,使我们可以简单方便的指定任何元素的集合。

jQuery的选择器采用CSS的语法,并且扩展了一些用于选择元素的自定义方法,使我们可以执行复杂而又常见的任务。

jQuery的选择器可以分为基本选择器、过滤选择器和表单选择器几大类。

在jQuery的基本选择器中,又分为基本CSS选择器、层次选择器和特性选择器几大类。

使用CSS选择器来选取页面中的元素对于我们来说是非常熟悉的事情,我们可以通过ID,class类或元素的标签来选择元素。例如:

a —— 选择页面中的所有a元素
#foo —— 选择id为foo的元素
.bar —— 选择页面中所有class为bar的元素
                            

这些选择器还可以混合使用,通过组合可以精确的选择一些元素的集合。

在jQuery中,只需要将这些CSS选择器放置在 $() 包装器中,就变成了jQuery选择器。例如:

$('.bar') —— 选择页面中所有class为bar的元素                                
                            

另外,jQuery选择器完全兼容CSS3,在样式表中,能够被兼容浏览器所选择的元素,都可以被jQuery引擎选中。

为了了解这些选择器,我们制作了一个DEOM,你可以这个DEMO,或在线。在这个DEMO中,我们通过不同的jQuery选择器来选择元素,被选择的元素的HTML代码会高亮显示,这样可以直观的观察jQuery选择器的效果。这个DEOM使用的HTML代码如下:

<div class="first"></div>
  <nav>
    <div id="myId"></div>
    <section>
      <div class="second"></div>
      <div data-bind="demo"></div>
      <div data-bind="another demo"></div>
    </section>
  </nav>
<span class="second"></span>                                
                            

选择器 返回值 描述 * 返回集合 选取页面中的所有元素 .class 返回集合 选择指定的class类的所有元素 #id 返回单个元素 选择指定的ID的元素 element 返回集合 选择所有匹配标签的元素 N1,N2,... 返回集合 选择所有匹配标签(N1,N2,...)的元素 *选择器

*选择器选取页面中的所有元素。

类选择器

类选择器选择指定的class类的所有元素。例如:要选择所有带 .second 类的元素:

$(".second").highlight();                                
                            

ID选择器

ID选择器选择指定的ID的元素。例如:要选择带 #myId 类的元素:

$("#myId").highlight();                                
                            

元素选择器(E)

元素选择器选择所有匹配标签的元素。例如:匹配页面中的 <section> 元素会得到下图的效果:

$("section").highlight();                                
                            

群组选择器(N1,N2,...)

群组选择器选择所有匹配标签(N1,N2,...)的元素。例如:匹配页面中的 <span> 元素和 div.myId 元素会得到下图的效果:

$("span,div#myId").highlight();                                
                            

选择器 返回值 描述 E F 返回集合 选择元素E里面的所有标签名为F的所有元素 E > F 返回集合 选择标签名称为F,并且作为E的直接子元素的所有元素 E ~ F 返回集合 选择元素E后面的所有为E兄弟节点的F元素 E + F 返回集合 选择元素E后面的所有为E的相邻兄弟节点的F元素 子元素选择器(E F)

子元素选择器( E F )会选择元素E里面的所有标签名为F的所有元素。例如:要选择 <nav> 元素中的所有 <div> 元素。

$("nav div").highlight();                                
                            

直接子元素选择器(E > F)

直接子元素选择器( E > F )会选择标签名称为F,并且作为E的直接子元素的所有元素。例如:要选择 <nav> 元素的所有 <div> 直接子元素。

$("nav > div").highlight();                                
                            

兄弟节点选择器(E ~ F)

兄弟节点选择器( E ~ F )会选择元素E后面的所有为E兄弟节点的F元素。例如选择 div.three 元素的兄弟节点元素。

$("div.three ~ div").highlight();                                
                            

相邻兄弟节点选择器(E + F)

相邻兄弟节点选择器( E + F )会选择元素E后面的所有为E的相邻兄弟节点的F元素。例如选择 div.three 元素的相邻兄弟节点元素。

$("div.three + div").highlight();                                
                            

选择器 返回值 描述 E[A=V] 返回集合 匹配特性A的值等于A的所有E元素 E[A^=V] 返回集合 匹配特性A的值以A开头的所有E元素 E[A$=V] 返回集合 匹配特性A的值以A结尾的所有E元素 E[A*=V] 返回集合 匹配特性A的值包含A的所有E元素 E[A=V]

E[A=V] 选择器匹配特性A的值等于A的所有E元素。例如:匹配 data-bind 属性值等于 demo 的所有元素。

$("[data-bind='demo']").highlight();                                
                            

E[A^=V]

E[A^=V] 选择器匹配特性A的值以A开头的所有E元素。例如:匹配 data-bind 属性值以 another 开头的所有元素。

$("[data-bind^='another']").highlight();                                
                            

E[A$=V]

E[A$=V] 选择器匹配特性A的值以A结尾的所有E元素。例如:匹配 data-bind 属性值以 demo 结尾的所有元素。

$("[data-bind$='demo']").highlight();                                
                            

E[A*=V]

E[A*=V] 选择器匹配特性A的值包含A的所有E元素。例如:匹配 data-bind 属性值包含 demo 的所有元素。

$("[data-bind*='demo']").highlight();                                
                            

查看更多关于jQuery教程-jQuery基本选择器的详细内容...

  阅读:48次