《锋利的Jquery第二版》读书笔记 第二章
本章节主要Jquery选择器
jquery选择器与css选择器十分相似,特别需要注意的是
<script type="text/javascript">
document.getElementById("tt").style.color="red"/*若没有"tt"元素,浏览器者会报错*/
</script> <script type="text/javascript">
if(document.getElementById("tt"){
document.getElementById("tt").style.color="red";
)
</script>
$("#tt")获取的永远是对象,即使没有此元素也不会报错,同理
错 if($("#tt")){
//代码
} 对 if($("#tt").length>0){
//代码
} 或者转换为DOM对象也是对的 if($("#tt")[0]){
//代码
}
层次选择器
$("ancestor descendant") 空格表示选取祖先元素里所有的此类后代元素;
$("parent>child") 大于号表示选取父元素下的子元素(相隔一代);
$("prev+next")加号表示选取紧接在此元素后面的下一个同辈元素,可使用next()方法代替如
$(".one+div");等价于$(".one").next("div");
<li><span>Name</span><inputtype="text"/><inputtype="text"/></li>
$("span+input").所有<span>后面的文本框
$("prev~siblings")~表示选取此元素后面的所有同辈元素,可使用nextAll()方法代替如
$("#prev~div");等价于$("#prev").nextAll("div");
过滤选择器
1.基本过滤选择器
:first选取第一个元素,$("div:first");
:last选取最后一个元素;
:not(selector)去除所有给定选择器匹配的元素;
:even选取索引是偶数的所有元素,索引从0开始;
:odd选取索引是奇数的所有元素,索引从0开始;
:eq(index)选取索引等于index的元素,index从0开始;(单个元素)
:gt(index)选取索引大于index的元素,index从0开始;(不包括index本身)
:lt(index)选取索引小于index的元素,index从0开始;(不包括index本身)
:header选取所有标题元素,h1、h2等;
:animated选取当前正在执行动画的所有元素,$("div:animated")选取正在执行动画的<div>元素
:focus选取当前获取焦点的元素,$(":focus")
2.内容过滤器
:contains(text)选取含有文本内容为"text"的元素,$("div:contains('我')")
:empty选取不包含子元素或者文本的空元素,$("div:empty")
:has(selector)选取含有选择器所匹配的元素的元素,$("div:has(p)"),选取含有<p>元素的<div>元素
:parent选取含有子元素或者文本的元素$("div:parent")
3.可见性过滤选择器
:hidden选取所有不可见的元素$(":hidden")也可以$("input:hidden")
:visible选取所有可见的元素$("div:visible")
4.属性过滤选择器
[attribute]选取拥有此属性的元素,$("div[id]")选取拥有id这个属性的元素
[attribute=value]选取属性值为value的元素,$("div[title=test]")选取属性title为"test"的<div>元素
[attribute!=value]选取属性值不等于value的元素,同上相反,没有属性title的<div>也会被选取
[attribute^=value]选取属性值以value开头的元素,类似第二条
[attribute$=value]选取属性值以value结束的元素,类似第二条
[attribute*=value]选取属性的值含有value的元素,类似第二条
[attribute|=value]选取属性等于给定串或以该字符串为前缀(有"-")的元素,$("div[title|='en']")选取title为en或以en为前缀
[attribute~=value]选取属性用空格分隔的值中包含一个给定值的元素,$("div[title~='uk']")选取属性title用空格分隔的值中包含字符uk的元素
[attribute1][attribute2][attributeN],复合属性选择器,$("div[id][title$='test']")选取拥有id并且title以"test"结束的<div>元素
5.子元素过滤选择器(注意:此类过滤选择器所选取的均为集合元素)
:nth-child(index/even/odd/equation)选取每个父元素下的第index个子元素或者奇偶元素(index从1算起)
:first-child选取每个父元素的第一个子元素$("ul li:first-child")
:last-child选取每个父元素的最后一个子元素
:only-child如果某个元素是它父元素中唯一的子元素,那么将会被匹配;如果父元素中含有其他元素,则不会被匹配,
$("ul li:only-child")在<ul>中选取是唯一子元素的<li>元素
6.表单对象属性过滤选择器
:enabled选取所有可用元素$("#form1:enabled")
:disabled选取所有不可用元素$("#form2:disabled")(设置过disabled="disabled")
:checked选取所有被选中的元素(单选框,复选框)$("input:checked");选取所有被选中的<input>元素
:selected选取所有被选中的选项元素(下拉列表)$("select option:selected");选取所有被选中的选项元素
表单选择器
:input选取所有的<input>、<textarea>、<select>和<button>元素,$(":input")语法下同
:text选取所有的单行文本框
:password选取所有的密码框
:radio选取所有的单选框
:checkbox选取所有的多选框
:submit选取所有的提交按钮
:image选取所有的图像按钮
:reset选取所有的重置按钮
:button选取所有的按钮
:file选取所有的上传域
:hidden选取所有的不可见元素
选择器中的注意事项
选择器中含有"."、"#"、"("或"]"等特殊字符需要使用转义符,$("#id\\#b") id值为"id#b"
在jQuery1.3.1版本不需要在属性前添加@符号
空格使用也尤为重要,如var $t_a=(".test :hidden")选取class为"test"元素里面的隐藏元素,
var $t_a=(".test:hidden")选取隐藏的class为"test"的元素
《锋利的Jquery第二版》读书笔记 第二章的更多相关文章
- 《ECMAScript标准入门》第二版读书笔记
title: <ECMAScript标准入门>第二版 date: 2017-04-10 tags: JavaScript categories: Reading-note 2015年6月, ...
- 《细说PHP》第二版--读书笔记
第五章 PHP的基本语法 5.2.4 在程序中使用空白的处理 5.3 变量 5.3.1 变量的声明 在php中变量的声明必须是使用一个$符号,后面跟变量名来表示 unset()函数释放指定变量 iss ...
- sed&awk第二版读书笔记
1. POSIX标准对正则表达式字符和操作符的含义进行了形式化.这种标准定义了两类正则表达式:基本的正则表达式(BRE),grep和sed使用这种正则表达式;扩展的表达式,egrep和awk使用这种正 ...
- think in java 第四版读书笔记 第一章对象导论
很久没有碰过java了,为了项目需要以及以后找工作,还是有必要将think in java通读一遍.欢迎大家一起讨论学习 1.1抽象过程 面向对象语言的5个特性: 1.万物皆对象 任何事物都可以抽象为 ...
- 《javascript权威指南》读书笔记——第二篇
<javascript权威指南>读书笔记——第二篇 金刚 javascript js javascript权威指南 今天是今年的196天,分享今天的读书笔记. 第2章 词法结构 2.1 字 ...
- Docker技术入门与实战 第二版-学习笔记-10-Docker Machine 项目-2-driver
1>使用的driver 1〉generic 使用带有SSH的现有VM/主机创建机器. 如果你使用的是机器不直接支持的provider,或者希望导入现有主机以允许Docker Machine进行管 ...
- Docker技术入门与实战 第二版-学习笔记-8-网络功能network-3-容器访问控制和自定义网桥
1)容器访问控制 容器的访问控制,主要通过 Linux 上的 iptables防火墙来进行管理和实现. iptables是 Linux 上默认的防火墙软件,在大部分发行版中都自带. 容器访问外部网络 ...
- Linux设备驱动程序 第三版 读书笔记(一)
Linux设备驱动程序 第三版 读书笔记(一) Bob Zhang 2017.08.25 编写基本的Hello World模块 #include <linux/init.h> #inclu ...
- Primer C++第五版 读书笔记(一)
Primer C++第五版 读书笔记(一) (如有侵权请通知本人,将第一时间删文) 1.1-2.2 章节 关于C++变量初始化: 初始化不是赋值,初始化的含义是创建变量时赋予其一个初始值,而赋值的含义 ...
- 单元测试之道Java版——读书笔记
单元测试知道Java版读书笔记 首先我们必须要知道我们所写的代码,它的功能是什么,如果我们不了解代码的行为,那么也就无从测试. 我们测试的目的,是为了我们整个程序架构的稳定,代码其实就是欧文要实现功能 ...
随机推荐
- (转)IOS学习笔记-2015-03-29 int、long、long long取值范围
unsigned - - unsigned - - unsigned __int64的最大值: __int64的最小值:- unsigned __int64的最大值:
- 读书笔记之 - javascript 设计模式 - 工厂模式
一个类或者对象中,往往会包含别的对象.在创建这种对象的时候,你可能习惯于使用常规方式,即用 new 关键字和类构造函数. 这会导致相关的俩个类之间产生依赖. 工厂模式,就是消除这俩个类之间的依赖性的一 ...
- rsync 的使用和参数解释
备份往往可以为我们提供一种恢复的策略,因此在实际的生产应用中我们需要对系统的各个配置以及数据进行备份.然而普通的备份都是在本地磁盘或者相应的设备上进行,其实这样也存在一种缺陷,就是设备也出现问题怎么办 ...
- 浅谈.prop() 和 attr() 的区别
今天编码时遇到一个问题,通过后台查询的数据设置前端checkbox的选中状态,设置选中状态为.attr('checked','true');没有问题,但是当数据重新加载时,checkbox应清空即所有 ...
- Linux之C编译器gcc和makefile使用简介
使用gcc编译程序是,其过程主要分为四个阶段:预处理,编译,汇编,连接 程序清单: #include<stdio.h> #include<stdlib.h> int main( ...
- [DevExpress]DxValidationProvider分享
前些日子从研究所临时调回公司,帮忙做另外一个项目的控件验证工作,其实内容非常的简单,就是将用户即将提交至服务器的数据先做一个本地验证,以达到减少服务器压力.提高用户体验的目的. 附上一张图片 这是官方 ...
- 基于smarty+medoo手搭php简单的框架
1.首先看一下搭建好的smarty目录(箭头位置是后新建的文件夹,也是框架结构的最终目录结构) 2.首先在根目录下新建index.php文件即入口文件,内容如下 <?phprequire_onc ...
- Apache配置允许文件索引
这两天在看bootstrap的文档,所以在本地搭建了一个web server. 这里记下Apache的一个小配置: LISTEN *:8000 <VirtualHost *:8000> A ...
- 常用webservice接口地址
天气预报Web服务,数据来源于中国气象局Endpoint :http://www.webxml.com.cn/WebServices/WeatherWebService.asmxDisco ...
- hdu 1800 Flying to the Mars
Flying to the Mars 题意:找出题给的最少的递增序列(严格递增)的个数,其中序列中每个数字不多于30位:序列长度不长于3000: input: 4 (n) 10 20 30 04 ou ...