`

jquery系列之一——选择器(复合选择器)

 
阅读更多

16. 匹配包含给定文本的元素::contains(text)

示例:查找所有包含 "John" 的 div 元素。  

html:
<div>John Resig</div>
<div>George Martin</div>
<div>Malcom John Sinclair</div>
<div>J. OhnjQuery</div>
jquery:
$("div:contains('John')")
结果:
[ <div>John Resig</div>, <div>Malcom John Sinclair</div> ]

 

17匹配含有选择器所匹配的元素的元素::has(selector)

示例:给所有包含 p 元素的 div 元素添加一个 text 类。  

html:
<div><p>Hello</p></div>
<div>Hello again!</div>
jquery:
$("div:has(p)").addClass("text");
结果:
[ <div class="test"><p>Hello</p></div> ]

 

 18匹配包含给定属性的元素Array<Element(s)>[attribute]

示例:查找所有含有 id 属性的 div 元素。  

html:
<div>
  <p>Hello!</p>
</div>
<div id="test2"></div>
jquery:
$("div[id]")
结果:
[ <div class="test"><p>Hello</p></div> ]

 

19匹配给定的属性是某个特定值的元素Array<Element(s)>[attribute=value]

示例:查找所有 name 属性是 newsletter 的 input 元素。  

html:
<input type="checkbox" name="newsletter" value="Hot Fuzz" />
<input type="checkbox" name="newsletter" value="Cold Fusion" />
<input type="checkbox" name="accept" value="Evil Plans" />
jquery:
$("input[name='newsletter']");
结果:
[ <input type="checkbox" name="newsletter" value="Hot Fuzz" checked="true" />, <input type="checkbox" name="newsletter" value="Cold Fusion" checked="true" />]

 

20匹配所有不含有指定的属性,或者属性不等于特定值的元素Array<Element(s)>[attribute!=value]

此选择器等价于:not([attr=value])。

示例:查找所有 name 属性不是 newsletter 的 input 元素。  

html:
<input type="checkbox" name="newsletter" value="Hot Fuzz" />
<input type="checkbox" name="newsletter" value="Cold Fusion" />
<input type="checkbox" name="accept" value="Evil Plans" />
jquery:
$("input[name!='newsletter']");
结果:
[ <input type="checkbox" name="accept" value="Evil Plans" checked="true" /> ]

 

21.匹配给定的属性是以某些值开始的元素Array<Element(s)>[attribute^=value]

示例:查找所有 name 以 'news' 开始的 input 元素。  

html:
<input name="newsletter" />
<input name="milkman" />
<input name="newsboy" />
jquery:
$("input[name^='news']");
结果:
[ <input name="newsletter" />, <input name="newsboy" /> ]

 

22匹配给定的属性是以某些值结尾的元素Array<Element(s)>[attribute$=value]

示例:查找所有 name 以 'letter' 结尾的 input 元素。  

html:
<input name="newsletter" />
<input name="milkman" />
<input name="jobletter" />
jquery:
$("input[name$='letter']")
结果:
[ <input name="newsletter" />, <input name="jobletter" /> ]

 

23匹配给定的属性是以包含某些值的元素:Array<Element(s)>[attribute*=value]

示例:查找所有 name 包含 'man' 的 input 元素。  

html:
<input name="man-news" />
<input name="milkman" />
<input name="letterman2" />
<input name="newmilk" />
jquery:
$("input[name*='man']")
结果:
[<input name="man-news" />, <input name="milkman" />, <input name="letterman2" />]

 

 24复合属性选择器,需要同时满足多个条件时使用:Array<Element(s)>[selector1][selector2][selectorN]

示例:找到所有含有 id 属性,并且它的 name 属性是以 man 结尾的。  

html:
<input id="man-news" name="man-news" />
<input name="milkman" />
<input id="letterman" name="new-letterman" />
<input name="newmilk" />
jquery:
$("input[id][name$='man']")
结果:
[<input id="letterman" name="new-letterman" />]

 

 25匹配第一个子元素Array<Element(s)>:first-child

注意:':first' 只匹配一个元素,而此选择符将为每个父元素匹配一个子元素。

示例:在每个 ul 中查找第一个 li。  

html:
<ul>
  <li>John</li>
  <li>Karl</li>
  <li>Brandon</li>
</ul>
<ul>
  <li>Glen</li>
  <li>Tane</li>
  <li>Ralph</li>
</ul>
jquery:
$("ul li:first-child")
结果:
[<li>John</li>, <li>Glen</li>]

 

 26匹配最后一个子元素Array<Element(s)>:last-child

注意:':last'只匹配一个元素,而此选择符将为每个父元素匹配一个子元素。

示例:在每个 ul 中查找最后一个 li。  

html:
<ul>
  <li>John</li>
  <li>Karl</li>
  <li>Brandon</li>
</ul>
<ul>
  <li>Glen</li>
  <li>Tane</li>
  <li>Ralph</li>
</ul>
jquery:
$("ul li:last-child")
结果:
[<li>Brandon</li>, <li>Ralph</li>]

 

 27匹配唯一一个子元素Array<Element(s)>:only-child

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

示例:在 ul 中查找是唯一子元素的 li。  

html:
<ul>
  <li>John</li>
  <li>Karl</li>
  <li>Brandon</li>
</ul>
<ul>
  <li>Glen</li>
</ul>
jquery:
$("ul li:only-child")
结果:
[<li>Glen</li>]

 

  28匹配其父元素下的第N个子或奇偶元素Array<Element(s)>:nth-child

注意:':eq(index)' 只匹配一个元素,而这个将为每一个父元素匹配子元素。:nth-child从1开始的,而:eq()是从0算起的!

示例:在每个 ul 查找第 2 个li。  

html:
<ul>
  <li>John</li>
  <li>Karl</li>
  <li>Brandon</li>
</ul>
<ul>
  <li>Glen</li>
  <li>Tane</li>
  <li>Ralph</li>
</ul>
jquery:
$("ul li:nth-child(2)")
结果:
[<li>Karl</li>,   <li>Tane</li>]

 

 

 

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

    jquery帮助文档

    复合选择器可以同时选取多个符合特定条件的元素,如:`,`(并集)、`:`(伪类)等。示例: ```javascript $('div.myClass, span'); // 选取所有div.myClass元素和span元素 $('input[type="text"]:first'); // 选取第...

    jQuery Selectors(选择器)的使用(六、属性篇)

    除了上述单一属性选择器,jQuery还支持使用复合选择器来进一步细化选择结果。例如: - `[selector1][selector2][selectorN]`:可以选择同时满足多个属性条件的元素。 #### 学习方法 作者在文章开头提到了自己的...

    Learning jQuery 1.3

    - 选择器的使用,包括基本的选择器和复合选择器。 - 常用DOM操作方法,如`append()`、`prepend()`、`remove()`等。 - 事件处理方法,如`click()`、`hover()`、`bind()`等。 4. **高级功能**: - 动画效果的实现...

    jquery-ui-1.8.18.zip

    5. **日期选择器(Datepicker)**:为输入框添加日历选择功能,简化用户输入日期的过程。 6. **菜单(Menu)**:创建下拉式菜单,便于组织和展示网站的导航链接。 7. **自动完成(Autocomplete)**:为输入框提供自动...

    JQuery基础教程(中文高清版)电子书_part2

    【图书目录】第1章 jQuery入门 1.1 jQuery能做什么 1.2 jQuery为什么如此出色 1.3 第一个jQuery文档 1.3.1 下载jQuery 1.3.2 设置HTML文档 1.3.3 编写jQuery代码 1.4 小结第2章 选择符——取得你想要的一切...

    JQUery基础教程1

    关于JQUeryd的基础教程,比较适合初学者,特别是对于那些对于JQuery了解一点点,但是 不深入的人的学习本章是第三章开始的主要内容有如下的 3.事件——扣动扳机 3.1在页面加载后执行任务 3.1.1 代码执行的时机...

    jquery基础教程高清版PDF.part5.rar

     1.3 第一个jQuery文档   1.3.1 下载jQuery   1.3.2 设置HTML文档   1.3.3 编写jQuery代码   1.4 小结  第2章 选择符——取得你想要的一切   2.1 DOM   2.2 工厂函数$()   2.3 CSS选择符...

    庖丁解牛 纵向切入ASP.NET 3.5控件和组件开发 part1

    注意:由于文件大小为111MB,但本人的上传权限只有60MB,所以分开两部分压缩上传。解压前必须与part2一起解压。...附录a .net 3.5技术教程系列——collection/asp.net ajax/ silverlight/jquery ...646

    庖丁解牛 纵向切入ASP.NET 3.5控件和组件开发 part2

    注意:由于文件大小为111MB,但本人的上传权限只有60MB,所以分开两部分压缩上传。解压前必须与part2一起解压。...附录a .net 3.5技术教程系列——collection/asp.net ajax/ silverlight/jquery ...646

    JAVASCRIPT基础手册

    此外,还有一种复合类型——Object,用于表示复杂的数据结构。 2. **控制流程** - 条件语句(if...else)用于根据条件执行不同代码块。 - 循环(for、while、do...while)用于重复执行某段代码,直到满足特定条件...

Global site tag (gtag.js) - Google Analytics