跟着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 相关文章推荐
SWFObject 2.1以上版本语法介绍
Jul 10 Javascript
jQuery插件简单实现方法
Jul 18 Javascript
JavaScript的面向对象编程基础
Aug 13 Javascript
jQuery使用方法
Feb 04 Javascript
微信小程序 ecshop地址三级联动实现实例代码
Feb 28 Javascript
Angular实现的简单定时器功能示例
Dec 28 Javascript
Vue中对比scoped css和css module的区别
May 17 Javascript
轻松学习JavaScript函数中的 Rest 参数
May 30 Javascript
微信小程序自定义单项选择器样式
Jul 25 Javascript
layui富文本编辑器前端无法取值的解决方法
Sep 18 Javascript
vue简单练习 桌面时钟的实现代码实例
Sep 19 Javascript
微信小程序 this.triggerEvent()的具体使用
Dec 10 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
德生PL660的电路分析和打磨
2021/03/02 无线电
php从右向左/从左向右截取字符串的实现方法
2011/11/28 PHP
php使用curl通过代理获取数据的实现方法
2016/05/16 PHP
PHP制作登录异常ip检测功能的实例代码
2016/11/16 PHP
PHP有序表查找之二分查找(折半查找)算法示例
2018/02/09 PHP
用javascript获得地址栏参数的两种方法
2006/11/08 Javascript
javascript 获取图片颜色
2009/04/05 Javascript
jquery tools之tooltip
2009/07/25 Javascript
jquery 全局AJAX事件使用代码
2010/11/05 Javascript
Javascript实现关联数据(Linked Data)查询及注意细节
2013/02/22 Javascript
任意Json转成无序列表的方法示例
2016/12/09 Javascript
微信小程序 radio单选框组件详解及实例代码
2017/01/10 Javascript
微信小程序之数据缓存的实例详解
2017/09/29 Javascript
JS使用遮罩实现点击某区域以外时弹窗的弹出与关闭功能示例
2018/07/31 Javascript
Vue运用transition实现过渡动画
2019/05/06 Javascript
layui自定义ajax左侧三级菜单
2019/07/26 Javascript
微信小程序开发之map地图组件定位并手动修改位置偏差
2019/08/17 Javascript
js实现QQ邮箱邮件拖拽删除功能
2020/08/27 Javascript
JavaScript实现滚动加载更多
2020/12/27 Javascript
在Linux系统上通过uWSGI配置Nginx+Python环境的教程
2015/12/25 Python
Linux上安装Python的PIL和Pillow库处理图片的实例教程
2016/06/23 Python
pandas中Timestamp类用法详解
2017/12/11 Python
pandas 对series和dataframe进行排序的实例
2018/06/09 Python
详解pyenv下使用python matplotlib模块的问题解决
2018/11/29 Python
django-初始配置(纯手写)详解
2019/07/30 Python
python实现通过队列完成进程间的多任务功能示例
2019/10/28 Python
keras.utils.to_categorical和one hot格式解析
2020/07/02 Python
Python存储读取HDF5文件代码解析
2020/11/25 Python
基于css3的属性transition制作菜单导航效果
2015/09/01 HTML / CSS
利物浦足球俱乐部官方网上商店:Liverpool FC Official Store
2018/01/13 全球购物
碧欧泉法国官网:Biotherm法国
2019/10/23 全球购物
小学数学国培感言
2014/03/10 职场文书
2014年幼儿园园务工作总结
2014/12/05 职场文书
居住证明范文
2015/06/17 职场文书
《别在吃苦的年纪选择安逸》读后感3篇
2019/11/30 职场文书
Javascript中async与await的捕捉错误详解
2022/03/03 Javascript