选择器(一)
1、基本选择器
从最开始看到jQuery这样的选择器就让我想起了CSS的选择器,简直是同出一辙啊,CSS的选择器语法个人觉得相当的经典,那么jQuery借鉴CSS也就没有多少疑问了。
其中h1为选择器,color:red与background:#d00与声明,两者结合也即{}内称为声明块;color与background称为属性;red与#d00称为值。
其中选择器类别可分为以下类别:
标签选择器:p{CSS rules}
id选择器:#ID{CSS rules}
类选择器:.Class{CSS rules}
群组选择器:h1,h2,h3,h4,h5,h6{CSS rules}
后代选择器:div p{CSS rules}
通配选择器:*{CSS rules}
伪类选择器:a:link,a:visited{CSS rules}
另还有不常使用的多类选择器、属性选择器、部分属性选择器、相邻兄弟选择器、子选择器等,详细可参与《CSS权威手册》这本书或者http://www.w3.org/TR/CSS2/selector.html。
相对应,理解jQuery中$("#ID")就不是难事了。
jQuery中基本选择器包括*,class,element,id及这种群组方式selector1,selector2,…
使用这种$的优势在于:一是写法简洁,二是支持CSS1到CSS3选择器
再就是防止document.getElementById("#id")对象不存在,造成浏览器左下角的黄色感叹号,例网页开始存在id为t1的对象,某一天突然移除而js没有做相应的处理这样就会出现js错误;使用jQuery的$你无需考虑这种问题;
当然,还要注意$()选择器返回的是对象数组,因此要判断网页中是否存在某个元素,不能使用
而要使用
还是看下综合实例
2、层次选择器
不用说,层次选择器的思想来自CSS;实际上稍微拓展了
$("div
span")//选择<div>里所有<span>元素
$("div>span")//选择<div>元素下元素名为<span>的元素
$('prev+next')//选择紧接在prev元素后的next元素
$('prev~siblings')//选择prev元素之后的所有sibling元素
例: