jquery选择器 selector 学习笔记
2010-06-19 21:45
721 查看
基本选择器
这里提供了一份基本选择器的参考实例。这些选择器都支持CSS3语法准标和语议。$(‘div’)
选取所有<div>元素。
$(‘fieldset a’)
选择在<fieldset>元素内出现的所有<a>元素。
$(‘li>p’)
选取在<li>标记中直接出现的所有<p>元素。
$(‘div~p’)
选取位为<div>标记之后出现的所有<p>元素。(这个其实是在一个完整的<div></div>之后紧挨着的<p>)
$(‘p:has(b)’)
选取<p>元素内包含有<b>的所有元素。
$(‘div.someClass’)
选取<div>元素中出现class="someClass"属性的所有元素。
$(‘.someClass’)
选取出现class="someClass"属性的所有元素。
$(‘#testButton’)
选取id="testButton"的元素。元素id属性值在当前DOM中是唯一的。因此我很好奇出现了两个id="testButton"的元素时它会
怎么选。实验证明它只会选取第一个元素。真正的开发过程中,我们绝对不要在一个DOM中出现多个id相同的元素。
$(‘img[alt]’)
选取具有alt属性的所有<img>元素。
$(‘a[href$=.pdf]’)
选取具有href属性,而且属性的值以.pdf结尾的所有<a>元素。
$(‘button[id*=test]’)
选取所有的按钮,但按钮的id属性要包含"test"。
提示一下:在同一个$()结构中可以用“,
”来连接多个不同的选择器,比如这样:
$('div,p')
以下是匹配所有具有title属性的<div>元素,和所有具有alt
属性的<img>元素:
$('div[title],img[alt]')
位置选择器
这种类型的选择器可以附加到任何基本选择器上,用于进行基于元素位置的筛选。如果缺省基本选择器,则将被视为所有元素。
举一些例子吧。
$('p:first')
选取页面中第一个出现的<p>元素。
$('img[src$=.png]:first')
选取页面中第一个出现src属性值以.png结尾的<img>元素。
$('button.small:last')
选取页面中最后一个出现class="small"的按钮元素。
$('li:first-child')
选取页面中所有<li>列表的第一项元素。
$('a:only-child')
选取页面中所有<a>元素,但这些元素只能位于一个父级元素内。比如<li><a href="url">An
url</a></li>,此时<li>内的<a>是匹配的。
$(‘li:nth-child(2)’)
选取父级元素中第二个<li>元素。<li>也一家要位于一个父级元素内。比如<ul>
<li>1</li>
<li>2</li>
</ul>
此时<li>2</li>是匹配的。
$('tr:nth-child(odd)')
选取表格中所有为奇数的行元素。
$(‘li:nth-child(3n)’)
在父级元素中有很多个<li>元素,但只选取隔3次出现的<li>元素。比如
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
<li>6</li>
<li>7</li>
<li>8</li>
</ul>
其中<li>3</li>,<li>6</li>
匹配。
$('li:nth-child(3n+5)')
带有偏移量的选取。在父级元素中只选取从第5个<li>元素开始每隔3次出现的<li>元素。比如
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
<li>6</li>
<li>7</li>
<li>8</li>
</ul>
其中<li>5</li>,<li>8</li>
匹配。
$(‘.someClass:eq(1)’
) 选取页面中class="someClass"的第二个元素
。
jQuery
以0为基准,因此(1)表示相当于第2个。
$(‘.someClass:gt(1)’)
选取页面中所有class="someClass"的元素,除了开头两个。
$(‘.someClass:lt(4)’)
只选取页面中所有class="someClass"元素中最先的4个元素。
自定义选择器
jQuery提供这类的选择器用于在并不期望有CSS明确规定时,对元素进行方便快捷地选取。自定义选择器有可能会被组合起来,来看一看这些强大的选择器实例。
$('img:animated')
选取所有刚刚经历完动画方法调用的<img>元素。
$(':button:hidden') 选取所有被hide()方法隐含的按钮类型元素。
$('input[name=myRadioGroup]:radio:checked')
选取name="myRadioGroup"的单选框内被选中的项目。
$(':text:disabled') 选取所有被禁用的文本框元素。
$('#xyz :header') 选取id="xyz"元素内的所有<h>元素。
$('option:not(:selected)')
选取没有被选中的所有的<option>元素。
$('#myForm button:not(.someClass)')
选取id="myForm"的表单内不具有class="someClass"属性的所有按钮。
$('select[name=choices] :selected')
选取name="choices"的<select>元素中所有被选中的<option>项。
$('p:contains(coffee)')
选取所有内容包含有coffee的<p>元素。
这里有一个比较好的jquery selector lab: http://www.codylindley.com/jqueryselectors/
其中的demo可以下载。 demo
相关文章推荐
- JQuery学习笔记-层次选择器
- jQuery-使用选择器注意事项 学习笔记十
- [知了堂学习笔记]_JQuery选择器
- jQuery学习笔记(二)选择器 事件
- jQuery学习笔记之jQuery选择器的使用
- jQuery学习笔记之jQuery选择器的使用
- 学习笔记---css3选择器与jquery选择器大促
- jQuery入门学习笔记----第二章 jQuery选择器
- 前端学习-jQuery学习小笔记(1)——jQ基础以及各种选择器
- jQuery 选择器的类型(学习笔记)
- jQuery学习笔记2:选择器
- jQuery学习笔记(二):this相关问题及选择器
- 【知了堂学习笔记】_jQuery基础知识之选择器(一)
- [知了堂学习笔记] jQuery选择器
- jQuery学习笔记——各类选择器
- JQuery 学习笔记 选择器之六
- JQuery学习笔记-层次选择器
- jquery 学习笔记 ---选择器
- Java程序员的JavaScript学习笔记(12——jQuery-扩展选择器)
- 前端学习笔记-jquery-6-层级选择器及对应jquery方法