WEB开发网
开发学院网页设计JavaScript 小议jQuery对象中的类数组操作 阅读

小议jQuery对象中的类数组操作

 2010-09-14 13:44:17 来源:WEB开发网   
核心提示:我们都知道jQUery对象中有一个类数组的元素包装集,该集合类似js中的数组一样拥有length属性,小议jQuery对象中的类数组操作,因此我们称此为类数组,下面我们就来总结下这个jQuery对象中的类数组时如何进行操作的,用于从包装集里删除所有与选择器不匹配的元素;如果传入的是一个函数的话,那么包装集中的每个元素都

我们都知道jQUery对象中有一个类数组的元素包装集,该集合类似js中的数组一样拥有length属性,因此我们称此为类数组,下面我们就来总结下这个jQuery对象中的类数组时如何进行操作的,看看我们的jQuery为我们都提供了哪些可用的方法:

size():很明显,它应该是返回包装集中的元素个数,如$('a').size()表示链接元素的个数;

get(index):当没指定index时就默认取包装集中所有元素,并以js中的数组形式返回,如果指定了index,则返回下标为index对应的元素,如$('img[title]').get(0)返回包含属性title的第一个img元素,其也等效于$('img[title]')[0];

index(elem):在包装集中返回元素elem所在的下标,如果没找到该元素则返回-1;

add(String|elem|Array):把参数中的元素添加到包装集中,如果参数是jQuery选择器,那么将把所有匹配的对象都添加到集合中,如果是html元素那就通过clean方法得到的元素数组添加到集合中,如果是dom元素或dom元素数组,那就直接添加到集合了;注意返回的是添加后的包装集;如$('img[alt]','img[title]')等效于$('img[alt]').add('img[title]')即返回包含了alt属性的img元素或包含了title属性的img元素;

not(String|elem|Array):把包装集中满足参数条件的元素删除,注意参数只能是筛选表达式,即以"["或者":"开头的表达式,如$('img[title]').not('title*=puy')即返回包含title属性的img元素,并且这些元素的title属性中包含有puy文本;返回的是筛选之后的包装集;

filter(String|function):如果传入的参数是String类型的话,那么该表达式必须也是筛选表达式,用于从包装集里删除所有与选择器不匹配的元素;如果传入的是一个函数的话,那么包装集中的每个元素都调用这个函数,若这个函数返回false则把这个元素从包装集中删除,而在函数中可以通过this关键字来调用当时包装集中调用方法的元素;如$('td').filter(function(){return this.innerHTML.match(/^"d+$/)})返回td中的内容为数字的所有td元素;

1 2  下一页

Tags:小议 jQuery 对象

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接