jQuery慢慢啃筛选(四)
1.eq(index|-index) 获取第N个元素
其中负数:一个整数,指示元素的位置,从集合中的最后一个元素开始倒数。(1算起)
$("p").eq(1)
//获取匹配的第二个元素
$("p").eq(-2)
//获取倒数匹配的第二个元素
2.$('li').first()
//获取第一个元素
$('li').last()
//获取最后个元素
$(this).hasClass("protected")和 $(this).is(".protected")相等//检查当前的元素是否含有某个特定的类,如果有,则返回true。
3.filter(expr|obj|ele|fn)//筛选出与指定表达式匹配的元素集合。
$("p").filter(".selected")//保留带有select类的元素
$("p").filter(".selected, :first")//
保留第一个以及带有select类的元素
$("p").filter(function(index) { return $("ol", this).length == 0; });//
保留子元素中不含有ol的元素。
4.is(expr|obj|ele|fn)//根据选择器、DOM元素或 jQuery 对象来检测匹配元素集合,如果其中至少有一个元素符合这个给定的表达式就返回true。
$("input[type='checkbox']").parent().is("form")
//由于input元素的父元素是一个表单元素,所以返回true。
<ul>
<li><strong>list</strong> item 1 - one strong tag</li>
<li><strong>list</strong> item <strong>2</strong> - two <span>strong tags</span></li>
<li>list item 3</li>
</ul>
$("li").click(function() {
var $li = $(this),
isWithTwo = $li.is(function() {
return $('strong', this).length === 2;
});
if ( isWithTwo ) {
$li.css("background-color", "green");
} else {
$li.css("background-color", "red");
}
});
5.map(callback)//将一组元素转换成其他数组(不论是否是元素数组)
$("p").append( $("input").map(function(){
return $(this).val();
}).get().join(", ") );
6.has(expr|ele)//保留包含特定后代的元素,去掉那些不含有指定后代的元素。
<ul>
<li>list item 1</li>
<li>list item 2
<ul>
<li>list item 2-a</li>
<li>list item 2-b</li>
</ul>
</li>
<li>list item 3</li>
<li>list item 4</li>
</ul>
$('li').has('ul').css('background-color', 'red');
7.not(expr|ele|fn)//删除与指定表达式匹配的元素
$("p").not( $("#selected")[0] )
8.slice(start, [end])//选取一个匹配的子集
$("p").slice(0, 1).wrapInner("<b></b>");//wrapInner是在元素内部嵌套入HTML标签
$("p").slice(0, 2).wrapInner("<b></b>");
9.children([expr])//取得一个包含匹配的元素集合中每一个元素的所有子元素的元素集合。
$("div").children()//获取所有子元素
$("div").children(".selected")//获取带有具体类的元素
10.closest(expr|object|element)(expr|object|element)//从元素本身开始,逐级向上级元素匹配,并返回最先匹配的元素。。
closest和parents的主要区别是:
1,前者从当前元素开始匹配寻找,后者从父元素开始匹配寻找;
2,前者逐级向上查找,直到发现匹配的元素后就停止了,后者一直向上查找直到根元素,然后把这些元素放进一个临时集合中,再用给定的选择器表达式去过滤;
3,前者返回0或1个元素,后者可能包含0个,1个,或者多个元素。
$("li:first").closest(["ul", "body"]);
展示如何使用clostest来完成事件委托。
$(document).bind("click", function (e) {
$(e.target).closest("li").toggleClass("hilight");
});
11.find(expr|obj|ele)这个函数是找出正在处理的元素的后代元素的好方法。
$("p").find("span")
12.next([expr])//取得一个包含匹配的元素集合中每一个元素紧邻的后面同辈元素的元素集合。
$("p").next()
$("p").next(".selected")
13.nextAll([expr])//查找当前元素之后所有的同辈元素
$("div:first").nextAll().addClass("after");
14.nextUntil([exp|ele][,fil])//查找当前元素之后所有的同辈元素,直到遇到匹配的那个元素为止。
$("#term-1").nextUntil(term3, "dd").css("color", "green");
15.parent([expr])//取得一个包含着所有匹配元素的唯一父元素的元素集合
$("p").parent()
$("p").parent(".selected")
16.parents([expr])//取得一个包含着所有匹配元素的祖先元素的元素集合(不包含根元素)。可以通过一个可选的表达式进行筛选。
$("span").parents()
$("span").parents("p")
17.parentsUntil([expr|element][,filter])//查找当前元素的所有的父辈元素,直到遇到匹配的那个元素为止
18.prev([expr])//取得一个包含匹配的元素集合中每一个元素紧邻的前一个同辈元素的元素集合。
$("p").prev()
$("p").prev(".selected")
19.prevAll([expr])//查找当前元素之前所有的同辈元素
$("div:last").prevAll().addClass("before");
20.prevUntil([exp|ele][,fil])//找当前元素之前所有的同辈元素,直到遇到匹配的那个元素为止。
$('#term-2').prevUntil('dt').css('background-color', 'red');
21.siblings([expr])//取得一个包含匹配的元素集合中每一个元素的所有唯一同辈元素的元素集合。可以用可选的表达式进行筛选。
$("div").siblings(".selected")
22.add(expr|ele|html|obj[,con])//把与表达式匹配的元素添加到jQuery对象中。这个函数可以用于连接分别与两个表达式匹配的元素结果集。
<p>Hello</p><span>Hello Again</span>
$("p").add("span")
[ <p>Hello</p>, <span>Hello Again</span> ]
<p>Hello</p>
$("p").add("<span>Again</span>")
[ <p>Hello</p>, <span>Hello Again</span> ]
<p>Hello</p><p><span id="a">Hello Again</span></p>
$("p").add(document.getElementById("a"))
[ <p>Hello</p>, <p><span id="a">Hello Again</span></p>, <span id="a">Hello Again</span> ]
23.andSelf()//加入先前所选的加入当前元素中
从jQuery1.8开始,.andSelf()方法已经被标注过时,在jQuery1.8和更高版本中应使用.addBack()。
$("div").find("p").andSelf().addClass("border");
24.contents()//查找匹配元素内部所有的子节点(包括文本节点)。如果元素是一个iframe,则查找文档内容
$("p").contents().not("[nodeType=1]").wrap("<b/>");
$("iframe").contents().find("body").append("I'm in an iframe!");
25.end()//回到最近的一个"破坏性"操作之前。即,将匹配的元素列表变为前一次的状态。
<p><span>Hello</span>,how are you?</p>
$("p").find("span").end()
[ <p><span>Hello</span> how are you?</p> ]
jQuery慢慢啃筛选(四)的更多相关文章
- jQuery慢慢啃之ajax(九)
1.jQuery.ajax(url,[settings])//通过 HTTP 请求加载远程数据 如果要处理$.ajax()得到的数据,则需要使用回调函数.beforeSend.error.dataFi ...
- jQuery慢慢啃之回调(十三)
1.callbacks.add(callbacks)//回调列表中添加一个回调或回调的集合 // a sample logging function to be added to a callback ...
- jQuery慢慢啃之事件对象(十一)
1.event.currentTarget//在事件冒泡阶段中的当前DOM元素 $("p").click(function(event) { alert( event.curren ...
- jQuery慢慢啃之工具(十)
1.jQuery.support//一组用于展示不同浏览器各自特性和bug的属性集合 2.jQuery.browser//浏览器内核标识.依据 navigator.userAgent 判断. 可用值: ...
- jQuery慢慢啃之特效(八)
1.show([speed,[easing],[fn]])\\显示隐藏的匹配元素 //speed:三种预定速度之一的字符串("slow","normal", o ...
- jQuery慢慢啃之事件(七)
1.ready(fn)//当DOM载入就绪可以查询及操纵时绑定一个要执行的函数. $(document).ready(function(){ // 在这里写你的代码...}); 使用 $(docume ...
- jQuery慢慢啃之CSS(六)
1.css(name|pro|[,val|fn])//访问匹配元素的样式属性 $("p").css("color");//获取 $("p") ...
- jQuery慢慢啃之文档处理(五)
1.append(content|fn)//向每个匹配的元素内部追加内容. $("p").append("<b>Hello</b>"); ...
- jQuery慢慢啃之核心(一)
1. $("div > p"); div 元素的所有p子元素. $(document.body).css( "background", "bla ...
随机推荐
- Windows Server 2008 网站访问PHP响应慢的解决方法
公司新上了一个网站,但是在配置完PHP环境之后却发现了问题,访问HTML速度飞快,而访问PHP网页时就要卡顿1秒,响应很慢的样子,排除了带宽的因素之后,在百度上搜了一圈竟然解决了,现在将方法转载给大家 ...
- UIAlertView的使用
UIAlertView是用于弹出一个对话框进行选择或者消息提示 构造函数: UIAlertView * alert = [[UIAlertViewalloc] initWithTitle:@& ...
- [原]ubuntu下制作openstack-havana源
ubuntu下可以用apt-mirror下载openstack的源: 1.安装apt-mirror: apt-get install apt-mirror 2.配置/etc/apt/mirror.li ...
- 【转】SVN linux命令及 windows相关操作(三)
TortoiseSVN是windows下其中一个非常优秀的SVN客户端工具.通过使用它,我们可以可视化的管理我们的版本库.不过由于它只是一个客户端,所以它不能对版本库进行权限管理. TortoiseS ...
- Java 内存泄露的理解与解决过程
本文详细地介绍了Java内存管理的原理,以及内存泄露产生的原因,同时提供了一些列解决Java内存泄露的方案,希望对各位Java开发者有所帮助. Java内存管理机制 在C++ 语言中,如果需要动态分配 ...
- poj 2752 Seek the Name, Seek the Fame【KMP算法分析记录】【求前后缀相同的子串的长度】
Seek the Name, Seek the Fame Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 14106 Ac ...
- Spring三 Bean的三种创建方式
创建Bean的三种方式在大多数情况下,Spring容器直接通过new关键字调用构造器来创建Bean实例,而class属性指定Bean实例的实现类,但这不是实例化Bean的唯一方法.实际上,Spring ...
- Windows 服务卸载之后 重新安装提示 “指定的服务已标记为删除”
背景: 将一个项目做成一个windows服务,在调试的时候,需要卸载.安装该服务,但提示下面的错误:“指定的服务已标记为删除”,进入服务管理界面,启动自己注册的服务,无法手动更改成启用模 ...
- 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(43)-工作流设计-字段分类设计
原文:构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(43)-工作流设计-字段分类设计 系列目录 建立好42节的表之后,每个字段英文表示都是有意义的说明.先建立 ...
- WebKit历史项管理的实现
历史项管理依据标准定义,由Page管理一个Joint Session History, 包括了各个子Frame的历史项.逻辑上相应例如以下的关系: 从上面看三个层次:Page,Frame,以及JS B ...