jQuery 对象中的类数组操作


Posted in Javascript onApril 27, 2009

看看我们的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元素;

slice(begin,end):创建并返回新的包装集,该包装集是原来包装集的连续的一部分,且新包装集的第一个元素是原包装集中的begin位置的元素,而最后一个元素是end位置元素的前一元素,当然end可以不指定,那么将延伸到原始包装集的末尾;如$('*').slice(2,3)这个语句选择页面上的所有元素,然后生存包含原始包装集的第三个元素的新包装集,注意这个$('*').get(2)不同,这个返回的是元素,而slice方法返回的是包装集,从而拥有包装集的操作;

childen():返回原始包装集元素的所有不同子元素所组成的新包装集(不包含文本节点),如$('div').children()返回所有div元素下的子元素所组成的新包装集;如果指定了参数,那么该参数也是筛选表达式;

contents():返回原始包装集元素的内容新包装集(可以包含文本节点);注意此方法不能接受参数进行过滤;

next():返回原始包装集元素的所有唯一的下一个兄弟元素所组成的新包装集;如果指定了参数,那么该参数也是筛选表达式;如$('div#someDiv').next()返回包含id为someDiv的div元素的下一个兄弟元素的包装集;如果指定了参数,那么该参数也是筛选表达式;

nextAll():返回包含原始包装集元素的所有后续兄弟的新包装集;如$('div#someDiv').nextAll()返回包含id为someDiv的div元素的后面兄弟元素的新包装集;如果指定了参数,那么该参数也是筛选表达式;

parent():返回原始包装集所有元素的唯一直接父元素的新包装集;如果指定了参数,那么该参数也是筛选表达式;

parents():返回原始包装集所有元素的祖先元素的新包装集;如果指定了参数,那么该参数也是筛选表达式;

prev():返回原始包装集元素的所有唯一的上一个兄弟元素组成的新包装集;如果指定了参数,那么该参数也是筛选表达式;

prevAll():返回包含原始包装集元素的所有前面兄弟元素的新包装集;如果指定了参数,那么该参数也是筛选表达式;

siblings():返回包含原始包装集元素中的所有唯一兄弟元素所组成的新包装集;如果指定了参数,那么该参数也是筛选表达式;

find(String):返回包含原始包装集里与传入的选择器表达式相匹配的所有元素的新包装集,并且原始包装集中的元素的后代也会被传入新的包装集;

contains(text):返回包含text参数所传入的文本字符串的元素所组成的新包装集;

is(String):如果包装集中含有String匹配的元素,那么返回true,否则返回false;

clone(copyHandle):如果传入的参数为true,那么会连带事件一起拷贝,否则不拷贝事件,形成一个新的包装集;

end():在jQuery命令链内调用,以便返回退到前一个包装集;

andSelf():合并命令链内最近产生的两个包装集;

对于包装元素的操作就总结到这里,如果哪里不对的还请各位指出来方便大家参考学习。

Javascript 相关文章推荐
使用jquery组件qrcode生成二维码及应用指南
Feb 22 Javascript
ECMAScript6函数剩余参数(Rest Parameters)
Jun 12 Javascript
全面解析DOM操作和jQuery实现选项移动操作代码分享
Jun 07 Javascript
JavaScript prototype属性详解
Oct 25 Javascript
微信小程序教程系列之设置标题栏和导航栏(7)
Jun 29 Javascript
基于JavaScript实现带数据验证和复选框的表单提交
Aug 23 Javascript
Angular6中使用Swiper的方法示例
Jul 09 Javascript
傻瓜式解读koa中间件处理模块koa-compose的使用
Oct 30 Javascript
JavaScript解析及序列化JSON的方法实例分析
Jan 04 Javascript
Vue+element 解决浏览器自动填充记住的账号密码问题
Jun 11 Javascript
浅谈vue 二级路由嵌套和二级路由高亮问题
Aug 06 Javascript
jQuery实现推拉门效果
Oct 19 jQuery
jquery遍历input取得input的name
Apr 27 #Javascript
jquery创建div 实现代码
Apr 27 #Javascript
js tab 选项卡
Apr 26 #Javascript
JavaScript 使用技巧精萃(.net html
Apr 25 #Javascript
RGB颜色值转HTML十六进制(HEX)代码的JS函数
Apr 25 #Javascript
JQuery 初体验(建议学习jquery)
Apr 25 #Javascript
jQuery 注意事项 与原因分析
Apr 24 #Javascript
You might like
第九节 绑定 [9]
2006/10/09 PHP
PHP网上调查系统
2006/10/09 PHP
加强版phplib的DB类
2008/03/31 PHP
php调用google接口生成二维码示例
2014/04/28 PHP
PHP SPL标准库之数据结构堆(SplHeap)简单使用实例
2015/05/12 PHP
js事件冒泡实例分享(已测试)
2013/04/23 Javascript
jQuery实现用户注册的表单验证示例
2013/08/28 Javascript
laytpl 精致巧妙的JavaScript模板引擎
2014/08/29 Javascript
js实现简单的省市县三级联动效果实例
2016/02/18 Javascript
[原创]Javascript 实现广告后加载 可加载百度谷歌联盟广告
2016/05/11 Javascript
JavaScript代码性能优化总结篇
2016/05/15 Javascript
JS实现的适合做faq或menu滑动效果示例
2016/11/17 Javascript
Angular中ng-options下拉数据默认值的设定方法
2017/06/21 Javascript
解决canvas画布使用fillRect()时高度出现双倍效果的问题
2017/08/03 Javascript
node.js实现的装饰者模式示例
2017/09/06 Javascript
Three.js 再探 - 写一个微信跳一跳极简版游戏
2018/01/04 Javascript
nodejs基于express实现文件上传的方法
2018/03/19 NodeJs
JavaScript读写二进制数据的方法详解
2018/09/09 Javascript
解决vue cli使用typescript后打包巨慢的问题
2019/09/30 Javascript
如何在Node和浏览器控制台中打印彩色文字
2020/01/09 Javascript
JavaScript async/await原理及实例解析
2020/12/02 Javascript
[01:40]2014DOTA2国际邀请赛 三冰SOLO赛后采访恶搞
2014/07/09 DOTA
[53:29]完美世界DOTA2联赛循环赛 DM vs Matador BO2第二场 11.04
2020/11/05 DOTA
[03:17]DOTA2-DPC中国联赛1月29日Recap集锦
2021/03/11 DOTA
linux平台使用Python制作BT种子并获取BT种子信息的方法
2017/01/20 Python
python批量查询、汉字去重处理CSV文件
2018/05/31 Python
浅谈DataFrame和SparkSql取值误区
2018/06/09 Python
浅谈pycharm出现卡顿的解决方法
2018/12/03 Python
使用python把xmind转换成excel测试用例的实现代码
2020/10/12 Python
Willer台湾:日本高速巴士/夜行巴士预约
2017/07/09 全球购物
什么是lambda函数
2013/09/17 面试题
元旦活动感言
2014/03/08 职场文书
遗嘱公证书标准样本
2014/04/08 职场文书
武侯祠导游词
2015/02/04 职场文书
简单的辞职信模板
2015/05/12 职场文书
React四级菜单的实现
2022/04/08 Javascript