1、基本选择器

l ID 根据元素ID选择

l Elementname 根据元素名称选择

l Classname 根据元素css类名选择

举例:

<input type=”text” id=”ID” value=”根据ID选择”/>
<a>根据元素名称选择</a>
<input type=”text” class=”classname” value=”根据元素css类名选择”/>

取值:

jQuery(“#ID”).val();
jQuery(“a”).text();
jQuery(“.classname”).val();

以上为最常见的选择器,其中ID选择器是效率最高的,在可能的情况下应该尽量使用它。

2、层次选择器

l Ancestor descendant 祖先和子孙选择器

l Parent > child 父子节点选择器

l Prev + next 同级别选择器

l Prev ~ siblings 过滤选择器

举例:

<div id=”divTest”>
<input type=”text” value=”1”/>
<input id=”next” type=”text”/>
<input type=”text” value=”2”/>
<input type=”text” title=”t” value=”3”/>
<a>1</a>
<a>2</a>
</div>

结果:

//得到div中的a标签内容 结果为12
jQuery(“#divTest a”).text();
//输出div直接子节点 结果为1
jQuery(“#divTest>input”).val();
//输出id为next的后一个同级别元素 结果为2
jQuery(“#next+input”).val();
//输出id为next,且有title的元素 结果为3
jQuery(“#next~[title]”).val();

3、基本过滤选择器

l :first 找到第一元素

l :last 找到最后一个元素

l :not(selector) 去除与给定选择器匹配的元素

l :even 匹配索引值为偶数的元素 从0开始计数

l :odd 匹配索引值为奇数的元素 从0开始计数

l :eq(index) 匹配一个给定索引值元素 从0开始

l :gt(index) 匹配大于给定索引值元素

l :lt(index) 匹配小于给定索引值元素

l :header 选择h1,h2,h3一类的标签 (目前没用过)

l :animated 匹配正执行动画效果的元素 (目前没用过)

举例:

<div id="divTest">
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<input type="radio" value="r1" checked="checked"/>
<input type="radio" value="r2"/>
</ul>
</div>

结果:

$(document).ready(function(){
//第一个li内容 结果为1
alert(jQuery("li:first").text())
//最后一个li内容 结果为4
alert(jQuery("li:last").text());
//input未被选中的值 结果为r2
alert(jQuery("li input:not(:checked)").val())
//索引为偶数的li 结果为2,4
alert(jQuery("li:even").text());
//索引为奇数的li 结果为1,3
alert(jQuery("li:odd").text())
//索引大于2的li的内容 结果为4
alert(jQuery("li:gt(2)").text())
//索引小于1的li的内容 结果为1
alert(jQuery("li:lt(1)").text())
});

4、内容过滤器

l :Contains(text) 匹配包含给定文本的元素

l :empty 匹配所有不包含子元素或者文本的空元素

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

举例:

<div id="Test">
<ul>
<li>qq123</li>
<li>qq</li>
<li></li>
<li>a</li>
<li><a>b</a></li>
</ul>
</div>

结果:

$(document).ready(function(){
//包含qq的li的内容 结果为qq123投资 qq
alert(jQuery("li:contains('qq')").text())
//内容为空的li的后一个li内容 结果为a
alert(jQuery("li:empty+li").text())
//包含a标签的li的内容 结果为b
alert(jQuery("li:has(a)").text());
});

5、可见性过滤器

l :hidden 匹配不可见元素

l :visible 匹配可见元素

举例:

<div id="Test">
<ul>
<li>可见</li>
<li style="display:none;">不可见</li>
</ul>
</div>

结果:

$(document).ready(function(){
//不可见的li的内容 结果为不可见
jQuery("li:hidden").text();
//可见的li的内容 结果为可见
jQuery("li:visible").text();
});

6、属性过滤器

l [attribute=value] 匹配属性是给定值得元素

l [attribute^=value] 匹配属性是以给定值结束的元素

l [attribute$=value] 匹配属性是以给定值结束的元素

l [attribute*=value] 匹配属性包含给定值得元素

举例:

<div id="Test">
<input type="text" name="qq123" value="qq123" />
<input type="text" name="123qq" value="123qq" />
<input type="text" name="a" value="a" />
</div>

结果:

$(document).ready(function(){
//name为qq123的值 结果为qq123投资
alert(jQuery("input[name='qq123']").val());
//name以qq开始的值 结果为qq123投资
alert(jQuery("input[name^='qq']").val());
//name以qq结束的值 结果为投资123qq
alert(jQuery("input[name$='qq']").val());
//name包含a的值 结果为a
alert(jQuery("input[name*='a']").val());
});

[置顶] Jquery学习总结(二) jquery选择器详解的更多相关文章

  1. [置顶] linux学习之samba安装问题详解

    一.首先查看是否安装samba,命令为:rpm -qa | grep samba 出现如下包表示已经安装,否则没有安装 samba-winbind-clients-3.5.10-125.el6.i68 ...

  2. [置顶] 深入浅出Spring(三) AOP详解

    上次的博文深入浅出Spring(二) IoC详解中,我为大家简单介绍了一下Spring框架核心内容中的IoC,接下来我们继续讲解另一个核心AOP(Aspect Oriented Programming ...

  3. jQuery学习之二 jQuery选择器

    一.jQuery选择器是什么1.CSS选择器2.jQuery选择器 二.jQuery选择器的优势1.简洁的写法2.支持从CSS1到CSS3选择器3.完善的处理机制  传统js选择器假如要操作的元素不存 ...

  4. jQuery学习笔记(二)jQuery中DOM操作

    目录 DOM操作分类 jQuery中的各种DOM操作 查找节点 创建节点 删除节点 复制节点 替换节点 包裹节点 属性操作 样式操作 对HTML.文本和值的操作 遍历节点 CSS-DOM操作 小结 本 ...

  5. jQuery学习笔记之Ajax用法详解

    这篇文章主要介绍了jQuery学习笔记之Ajax用法,结合实例形式较为详细的分析总结了jQuery中ajax的相关使用技巧,包括ajax请求.载入.处理.传递等,需要的朋友可以参考下 本文实例讲述了j ...

  6. 从零实现一个简易的jQuery框架之二—核心思路详解

    如何读源码 jQuery整体框架甚是复杂,也不易读懂.但是若想要在前端的路上走得更远.更好,研究分析前端的框架无疑是进阶路上必经之路.但是庞大的源码往往让我们不知道从何处开始下手.在很长的时间里我也被 ...

  7. CDN学习笔记二(技术详解)

    一本好的入门书是带你进入陌生领域的明灯,<CDN技术详解>绝对是带你进入CDN行业的那盏最亮的明灯.因此,虽然只是纯粹的重点抄录,我也要把<CDN技术详解>的精华放上网.公诸同 ...

  8. jquery选择器之属性过滤选择器详解

    代码如下: <style type="text/css">  /*高亮显示*/  .highlight{       } </style> 复制代码代码如下 ...

  9. [置顶] linux中fork()函数详解(原创!!实例讲解)

    分类: 计算机系统 linux2010-06-01 23:35 60721人阅读 评论(105) 收藏 举报 linux2010存储  一.fork入门知识 一个进程,包括代码.数据和分配给进程的资源 ...

  10. C#学习笔记二: C#类型详解

    前言 这次分享的主要内容有五个, 分别是值类型和引用类型, 装箱与拆箱,常量与变量,运算符重载,static字段和static构造函数. 后期的分享会针对于C#2.0 3.0 4.0 等新特性进行. ...

随机推荐

  1. Selenium2学习-024-WebUI自动化实战实例-022-网站不同分辨率下页面样式展示兼容性问题解决方案 -- 设置浏览器显示区域大小(无人值守,节约测试成本的福音,BOSS 最爱)

    在 Web UI 自动化测试的过程中,通常会测试页面在不同分辨率下的显示效果,即在不同大小的显示器上全屏浏览器后的页面展示,此种测试方法需要购置不同大小的显示器,或者频繁的设置屏幕分辨率,不仅浪费了大 ...

  2. Failed to load PDF in chrome/Firefox/IE

    笔者的公司搭建了一个Nexus服务器,用来管理我们自己的项目Release构件和Site文档. 今天的问题是当用户访问一个Site里的PDF文件的时候,报错说“detected that the ne ...

  3. Linux绑定双网卡

    Linux绑定双网卡 1. 配置参数文件 版本在centos6以下在/etc/modproe.conf文件中配置,版本是centos6.x或以上在/etc/modproe.d/目录下配置. 2.    ...

  4. JBOSS安全配置

    1.jmx-console登录的用户名和密码设置 默认情况访问http://localhost:8080/jmx-console就可以浏览jboss的部署管理的一些信息,不需要输入用户名和密码,使用起 ...

  5. 电量显示Binding Converter MVVM

    用一个ProcessBar显示电量,低于20%时候,ForeGround为红色,否则为绿色, 页面使用了MVVM绑定到了ViewModel, ProcessBar XAML为 <Progress ...

  6. Jboss消息 异常

    org.jboss.mq.SpyJMSException: Could not update message: 1 msg=13 hard STORED PERSISTENT queue=QUEUE. ...

  7. 常用SQL操作(MySQL或PostgreSQL)与相关数据库概念

    本文对常用数据库操作及相关基本概念进行总结:MySQL和PostgreSQL对SQL的支持有所不同,大部分SQL操作还是一样的. 选择要用的数据库(MySQL):use database_name; ...

  8. Lintcode: Segment Tree Query II

    For an array, we can build a SegmentTree for it, each node stores an extra attribute count to denote ...

  9. Java SE series:2. enhance your java basis! [doc chm: jdk6api Chinese reference]

    1. javaee(Web) and Android 2. how to use eclipse and break point debuging in eclipse, as to java web ...

  10. [原创]java WEB学习笔记91:Hibernate学习之路-- -HQL 迫切左外连接,左外连接,迫切内连接,内连接,关联级别运行时的检索策略 比较。理论,在于理解

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...