跟着JQuery API学Jquery 之三 筛选


Posted in Javascript onApril 09, 2010

1.过滤
eq(index) 看这个函数和基础里的:eq貌似是一样的(其实就是一样的)
比如我们对<div>1</div><div>1</div>做选择,那我们可以用$(“div”).eq(1)或$(“div:eq(1)”)
来选中第二个div效果是一样的

hasClass(class) 用来判断当前元素是否含有一个类 这个和is(“.”+class)是一样的,我们来看一下is()这个函数用来干吗的 ,它是用一个表达式来检查当前选择的元素的集合,如果其中至少有一个元素符合给定表达式就返回true。is(expr)里面的参数就是选择器的参数。

filter(expr) 用来选出带有匹配表达式的元素的集合,这个和is有点类似,只不过is是返回的bool型,用于判断,filter用来缩小范围,filter中的参数可以是一个函数,函数的返回值为bool型,当返回的是真的时候就保留节点。其实就是对对象做一个循环,然后删除不要的。比如有<p class="aa">asdf</p><p>2343</p>我们选择class为aa的那个 把他的文本改成一段文字
$("p").filter(function() { return $(this).hasClass("aa") }).text("选择的东西")

not(txpr) 用来删除匹配的元素,这个又和前面有一个:not()一样
slice(start,[end]) 选择一个段 从start开始到end 结束 如果没有end则到结尾
$("p").slice(0, 1),我总觉得这个函数的第二个变量该成num 要好一点 ,从哪一个开始,选择前num个。

2 查找
add(expr) 把与表达式匹配的添加到原来的对象中,这个有点像多选择器比如$(“#id,.cs”)
也可以写成$(“#id”).add(“.cs”)效果一样
Children([expr])得到所有子元素的集合
Contents() 查找匹配元素内部所有的子节点。如果是iframe则查找文档的内容。这个可以很方便的用来变更iframe里面的内容,比如文本编辑器。。
find(expr) 搜索与指定表达式匹配的内容,这个也可以用选择器来实现 比如 $(“ul li”)可以写成 $(“ul”).find(“li”)
next(expr) 搜索同辈元素中紧跟在后面的元素,这个有是 a+b的选择器形式 比如我们要选择div后面跟p标签的$(“div+p”)当然也可以用$(“div”).next(“p”)
nextAll() 搜索后面所有的同辈元素 这个和 a~b是一样的$(“div~p”)和$(“div”).nextAll(“p”)是一样的
Prev([expr]) 取得紧邻的同辈元素的前一个这个和next()刚好相反
PrevAll([expr])取得前面所有的元素这个和nextAll() 刚好相反
Siblings([expr]) 这个函数应该就是nextAll()和prevAll()的和了

offsetParent() 返回第一个元素的父节点,为什么是第一个元素呢,这个用JavaScript来实现是Parent(),但是我们这个用的是jquery,操作的是jquery对象,在很多的教程上都在强调我们要分清JQuery对象和JS对象,其实Jquery对象就是一个array数组,就是要我们注意操作时要把数组的值取出来了在用想用第一个就在后面价格索引[0]来得到第一个对象。
Parent(expr)取得所有元素的都包含的父元素,我们已经知道jquery对象是一个数组,那么里面可能包含多个节点,那么我们就要找出这多个节点共同的父节点,也就是找出一个能够包含他们所有的一个节点,就像有两个人一个是湖北一个是河南,你要找他的上一级,就是他们都是中国的。当然你也可以在里面填一个参数parent(湖北)那么最后我们得到了的节点是湖北。

3 串联
串联里面只有两个函数 andSelf() 和end()
andSelf() 加入先前所选的加入到当前的元素中,这个解释读起来有点绕口。这里就要提一下Jquery的链式操作。比如你选择了 中国-湖北 得到了湖北这个节点 然后你又用 andSelf()把中国在加进入,这个对你想操作你没有筛选前的元素会很有用。
end() 回到最近一个有“破坏性”的操作之前,那什么是破坏性呢,就是对一个集合做了在次的操作
比如前面我们说的next(),到这里我们就知道为什么我们能用$(“div+p”)完成的操作要写成$(“div”).next(“p”)了。

Javascript 相关文章推荐
js验证表单第二部分
Nov 25 Javascript
javascript 必知必会之closure
Sep 21 Javascript
基于jquery的不规则矩形的排列实现代码
Apr 16 Javascript
Jquery Validate 正则表达式实用验证代码大全
Aug 23 Javascript
判定是否原生方法的JS代码
Nov 12 Javascript
javascript获取四位数字或者字母的随机数
Jan 09 Javascript
TypeError document.getElementById(...) is null错误原因
May 18 Javascript
Javascript函数中的arguments.callee用法实例分析
Sep 16 Javascript
vue-router 导航钩子的具体使用方法
Aug 31 Javascript
使用vue官方提供的模板vue-cli搭建一个helloWorld案例分析
Jan 16 Javascript
vue checkbox 全选 数据的绑定及获取和计算方法
Feb 09 Javascript
javascript 设计模式之享元模式原理与应用详解
Apr 08 Javascript
跟着JQuery API学Jquery 之二 属性
Apr 09 #Javascript
JSON 教程 json入门学习笔记
Sep 22 #Javascript
jquery.AutoComplete.js中文修正版(支持firefox)
Apr 09 #Javascript
javaScript call 函数的用法说明
Apr 09 #Javascript
javascript 自动填写表单的实现方法
Apr 09 #Javascript
Extjs入门之动态加载树代码
Apr 09 #Javascript
JS 非图片动态loading效果实现代码
Apr 09 #Javascript
You might like
PHP5/ZendEngine2的改进
2006/10/09 PHP
PHP中如何定义和使用常量
2013/02/28 PHP
js checkbox(复选框) 使用集锦
2009/04/28 Javascript
javascript concat数组累加 示例
2009/09/03 Javascript
JQuery 拾色器插件发布-jquery.icolor.js
2010/10/20 Javascript
javascript游戏开发之《三国志曹操传》零部件开发(二)人物行走的实现
2013/01/23 Javascript
删除select中所有option选项jquery代码
2013/08/12 Javascript
Jquery实现自定义tooltip示例代码
2014/02/12 Javascript
Javascript加载速度慢的解决方案
2014/03/11 Javascript
JavaScript Array对象扩展indexOf()方法
2014/05/09 Javascript
JavaScript利用正则表达式去除日期中的“-”
2014/07/01 Javascript
node+express+ejs制作简单页面上手指南
2014/11/26 Javascript
jQuery插件jcrop+Fileapi完美实现图片上传+裁剪+预览的代码分享
2015/04/22 Javascript
js实现浏览本地文件并显示扩展名的方法
2015/08/17 Javascript
Jsonp 关键字详解及json和jsonp的区别,ajax和jsonp的区别
2015/12/30 Javascript
理解javascript中的with关键字
2016/02/15 Javascript
基于SpringMVC+Bootstrap+DataTables实现表格服务端分页、模糊查询
2016/10/30 Javascript
angular实现表单验证及提交功能
2017/02/01 Javascript
基于模板引擎Jade的应用(详解)
2017/12/12 Javascript
搭建element-ui的Vue前端工程操作实例
2018/02/23 Javascript
微信小程序使用npm支持踩坑
2018/11/07 Javascript
解决JS表单验证只有第一个IF起作用的问题
2018/12/04 Javascript
深入了解Vue.js 混入(mixins)
2020/07/23 Javascript
对python mayavi三维绘图的实现详解
2019/01/08 Python
Python从函数参数类型引出元组实例分析
2019/05/28 Python
Python中字典与恒等运算符的用法分析
2019/08/22 Python
Python3如何对urllib和urllib2进行重构
2019/11/25 Python
解决django 向mysql中写入中文字符出错的问题
2020/05/18 Python
HTML5 拖放(Drag 和 Drop)详解与实例代码
2017/09/14 HTML / CSS
诉讼代理人授权委托书
2014/04/08 职场文书
挂牌仪式策划方案
2014/05/18 职场文书
三八节标语
2014/06/27 职场文书
党员学习正风肃纪思想汇报
2014/09/12 职场文书
安阳殷墟导游词
2015/02/10 职场文书
大学四年个人总结
2015/03/03 职场文书
2016年“12.4”法制宣传日活动总结
2016/04/01 职场文书