jQuery 选择器
jQuery的选择器基本可以分为四大类:
- 基本选择器(basic)
- 层次选择器(level)
- 过滤选择器(filter)
- 表单选择器(form)
- 有些类别又可以分为具体的子类别
基本选择器(basic)
- 匹配所有元素. 示例: $(“*")选取所有元素.
- id 根据给定的id匹配元素(最多只返回一个元素). 示例: $("#lastname”)选取id="lastname"的元素.
- .class 根据给定的类名匹配元素. 示例:$(".intro”)选取所有class=“intro"的元素.
- element 根据给定的元素名匹配元素. 示例: $(“p")选取所有p标签元素.
- .class.class 示例: $(".intro.demo”)选取所有 class="intro"且class="demo”的元素.(交集).
- selector1, selector2, …, selectorN, 将每一个选择器匹配到的元素合并后一起返回.(并集).
层次选择器
基本选择器之间可以组合,用逗号分隔,结果取所有条件的结果的并集.
当没有用逗号分隔时,应该是所有条件都满足的交集.
$(“ancestor descendant”) 选取ancestor元素里的所有descendant后代元素,包括直接子元素和更深嵌套的后代元素.
例:$(“div span”)选取<div>里的所有的<span>元素.
注意:选择器都是全页面扫描,返回一个集合,所有符合选择条件的元素都会被包括进去.所以多个<div>下面的<span>都会被选择.
$(“parent>child”)选取parent元素下的child子元素,即只有直接子元素被选取.其他后代元素不包括.
例:$(“div>span”)选取div元素下元素名是的子元素.
$(“prev+next”)选取紧接在prev元素后的next元素(同一层级).
例:$(“.one+div”)选取class为one的下一个div元素.
$(“prev~siblings”)选取prev元素之后的所有siblings元素(同一层级).
例:$(“#two~div”)选取id为two的元素后面的所有div兄弟元素.
过滤选择器
过滤选择器这个大类又分为六个子类:
- 基本过滤;
- 内容过滤;
- 可见性过滤;
- 属性过滤;
- 子元素过滤;
- 表单对象属性过滤.