Title

关于JQuery的选择和过滤

首先,比较简单的我们就不过多陈述,JQuery的选择器类似于css 的选择器,所以在这不做过多陈述。

在这篇文章里,我们主要讨论过滤器的使用;

1.过滤器(Filter):过滤器一般不单独使用,他通常附加在选择器上,帮助我们更精确地定位元素。举例如下:

$('ul.lang li:nth-child(even)');//选出序号为偶数的元素
$('ul.lang li:nth-child(odd)');//选出序号为奇数的元素

2.针对表单相关元素,JQuery还有一组特殊的选择器:

  • :input:可以选择<input><textarea><select><button>

  • :file:可以选择<input type="file">,和input[type=file]一样;

  • :checkbox:可以选择复选框,和input[type=checkbox]一样;

  • :radio:可以选择单选框,和input[type=radio]一样;

  • :focus:可以选择当前输入焦点的元素,例如把光标放到一个<input>上,用$('input:focus')就可以选出;

  • :checked:选择当前勾上的单选框和复选框,用这个选择器可以立刻获得用户选择的项目,如$('input[type=radio]:checked')

  • :enabled:可以选择可以正常输入的<input><select> 等,也就是没有灰掉的输入;

  • :disabled:和:enabled正好相反,选择那些不能输入的。

3.此外JQuery还有很多有用的选择器。例如

$('div:visible'); //所有可见的div
$('div:hidden'); //所有隐藏的div

4.查找和过滤

查找

find()方法来进行某个节点的所有子节点查找。

如果要从当前节点开始向上查找,使用parent()方法;

对于位于同一层级的节点,可以通过next()和prev()方法,

过滤

filter()函数

map()方法把一个jQuery对象包含的若干DOM节点转化为其他对象:

var langs = $('ul.lang li'); // 拿到JavaScript, Python, Swift, Scheme和Haskell
var arr = langs.map(function () {
    return this.innerHTML;
}).get(); // 用get()拿到包含string的Array:['JavaScript', 'Python', 'Swift', 'Scheme', 'Haskell']

 

posted @ 2023-05-25 11:14  赖金明的大爹  阅读(74)  评论(0编辑  收藏  举报