jQuery选择器是jQuery为我们提供的一组方法,让我们更加方便的获取到页面中的元素。注意:jQuery选择器返回的是jQuery对象。
jQuery选择器有很多,基本兼容了CSS所有的选择器,并且jQuery还添加了很多更加复杂的选择器。(查看jQuery文档)
jQuery选择器虽然很多,但是选择器之间可以相互替代,就是说获取一个元素,你会有很多种方法获取到。所以我们平时真正能用到的只是少数的最常用的选择器。
名称 | 用法 | 描述 |
---|---|---|
ID选择器 | $(’#id’); | 获取指定ID的元素 |
类选择器 | $(’.class’); | 获取同一类class的元素 |
标签选择器 | $(‘div’); | 获取同一类标签的所有元素 |
并集选择器 | $(‘div,p,li’); | 使用逗号分隔,只要符合条件之一就可。 |
交集选择器 | $(‘div.redClass’); | 获取class为redClass的div元素 |
语法模板: 00-语法模板.html(需要包含jquery.js)
<script type="text/javascript">
//常用选择器
//根据id获取元素 获取到的结果:类数组对象
console.log( $('#div0') );
console.log( $('#div0')[0] );
//根据class获取元素
console.log( $('.div_1') );
//根据标签名称来获取元素
console.log( $('div') );
//根据属性获取元素
console.log( $('input[name=username]') );
//根据表单元素属性获取元素
console.log( $(':checked') );
</script>
名称 | 用法 | 描述 |
---|---|---|
子代选择器 | $(‘ul > li’); | 使用-号,获取儿子层级的元素,注意,并不会获取孙子层级的元素 |
后代选择器 | $(‘ul li’); | 使用空格,代表后代选择器,获取ul下的所有li元素,包括孙子等 |
名称 | 用法 | 描述 |
---|---|---|
:eq(index) | $(‘li:eq(2)’).css(‘color’, ‘red’); | 获取到的li元素中,选择索引号为2的元素,索引号index从0开始。 |
:odd | $(‘li:odd’).css(‘color’, ‘red’); | 获取到的li元素中,选择索引号为奇数的元素 |
:even | $(‘li:even’).css(‘color’, ‘red’); | 获取到的li元素中,选择索引号为偶数的元素 |
名称 | 用法 | 描述 |
---|---|---|
children(selector) | $(‘ul’).children(‘li’) | 相当于$(‘ul-li’),子类选择器 |
find(selector) | $(‘ul’).find(‘li’); | 相当于$(‘ul li’),后代选择器 |
siblings(selector) | $(’#first’).siblings(‘li’); | 查找兄弟节点,不包括自己本身。 |
parent() | $(’#first’).parent(); | 查找父亲 |
eq(index) | $(‘li’).eq(2); | 相当于$(‘li:eq(2)’),index从0开始 |
next() | $(‘li’).next() | 找下一个兄弟 |
prev() | $(‘li’).prev() | 找上一次兄弟 |
closest | $(‘li’).closest(‘ul’) | 找最近一个祖先元素 |
语法模板: 00-语法模板.html(需要包含jquery.js)
<script type="text/javascript">
//常用筛选方法
//获取爱好对应的div
var hobby = $('#hobby');
//获取 hobby 父元素
console.log( $('#hobby').parent() );
//获取 hobby 子元素
console.log( $('#hobby').children() );
//获取 hobby 最近的祖先元素
console.log( $('#hobby').closest('form') );
//获取 hobby 所有后代元素
console.log( $('#hobby').find('input') );
//获取 hobby 下一个兄弟元素
console.log( $('#hobby').next() );
//获取 hobby 前一个兄弟元素
console.log( $('#hobby').prev() );
//获取 hobby 所有兄弟元素
console.log( $('#hobby').siblings() );
</script>