jQuery选择器

var div = document.getElementById("testDiv");//获取一个dom对象
var domToJQueryObject = $(div);//将DOM对象转换成jQuery包装集
var domObject = $("testDiv")[0];//通过索引器返回的不再是jQuery包装集,而是一个DOM对象
jQuery包装集的遍历:
$("testDiv").each(function(){alert(this)})

基本选择器

jQuery选择器:对象以jQuery包装集的形式返回(数组形式?)
$("#id"):选择id为id的元素      例:$("#divId")
$(element):选择所有的element元素 例:$("a")
$(".class"):选择类为class的元素 例:$(".bgRed")
$("*"):选择页面所有元素
$("#divId,a,.bgRed"):多个选择器用,隔开然后拼成一个选择器字符串,会 选中满足其中一个选择器的内容

层次选择器

$(".bgRed div"): 选择祖先元素匹配所有的后代元素$(".bgRed div")选择类为bgRed的所有 div元素
$("parent>child"): 选择父元素匹配的所有兄弟元素$("#myList>img")选择id为myList的所有 img元素
$("prev+next"): 选择所有紧接在prev元素后的相邻元素$("#bgRed+div")选择id为bgRed后面的同级div元素(prev和next是两个同级别的元素,选中prev元素后面的next元素)
$("prev~siblings"): 选择prev元素后的所有兄弟元素$("#bgRed~[title]")选择id为bgRed的 所有带有title属性的元素(选择prev后面根据siblings过滤的元素;siblings是过滤器)
siblings会包含前后的所有邻居

基本过滤器

:first  匹配找到的第一个元素  例:$("tr:first")查找表格的第一行
:last  匹配找到的最后一个元素
:not(selector)去除所有与给定选择器匹配的元素
:even匹配所有索引值为偶数的元素,从0开始计数  例:查找表格的1、3、5行,$("tr:even")
:odd 匹配所有索引值为奇数的元素,从0开始计数
:eq(index)匹配一个给定索引值的元素,index从0开始计数  例:$("tr:eq(1)")查找第二行
:qt(index)匹配所有大于给定索引值的元素  例:$("tr:qt(1)")查找第二行以后的元素
:lt(index)匹配所有索引小于N的元素
:header选择所有h1~h7一类的header标签
:animated匹配所有正在执行动画效果的元素

内容过滤器

:contains(text)匹配包含给定文本的元素  例:$("div:contains('John')")
:empty 匹配所有不包含子元素或者文本的空元素  例:$("td:empty")
:has(selector)匹配含有选择器所匹配的元素的元素 例:$("div:has(p)")
:parent匹配含有子元素或者文本的元素 例:$("tr:parent")

可见性过滤器

:hidden匹配所有不可见元素
:visible匹配所有的课件元素  例:$("tr:visible")

属性过滤器

[attribute]匹配包含给定属性的元素  例:$("div[id]")查找所有含有id 属性的div 元素
[attribute=value] 匹配给定的属性是某个特定值的元素  例:$("input[name='newsletter']")查找所有name 属性是newsletter 的input 元素
[attribute!=value]匹配给定的属性是不包含某个特定值 的元素
[attribute^=value]匹配给定的属性是以某些值开始的元素
[attribute$=value ]匹配给定的属性是以某些值结尾的元 素
[attribute*=value ]匹配给定的属性是以包含某些值的元 素 例:$("input[name*='man']") 查找所有name 包含'man' 的input 元素: 
[attributeFilter1][ attributeFilter2][attributeFilterN]复合属性选择器,需要同时满足多个条 件时使用。 例:$("input[id][name$='man']") 找到所有含有id 属性,并且它的name 属性是以man 结尾的

子元素过滤器

:nth-child(index/e ven/odd/equation) 匹配其父元素下的第N个子或奇偶元素  例:$("ul li:nth-child(2)")  在每个ul 查找第2 个li:
:first-child匹配第一个子元素  例:$("ul li:first-child") 在每个ul 中查找第一个li:
:last-child匹配最后一个子元素 
:only-child如果某个元素是父元素中唯一的子元素,那将会被匹配 ,如果父元素中含有其他元素,那将不会被匹配。  例$("ul li:only-child") 在ul 中查找是唯一子元素的li:  

表单选择器

:input匹配所有 input, textarea, select 和 button 元素  例:$(":input")查找所有的input元素:
:text匹配所有的文本框     例:$(":text")查找所有文本框:  
:password匹配所有密码框  
:radio匹配所有单选按钮 
:checkbox匹配所有复选框 
:submit匹配所有提交按钮
:image匹配所有图像域
:reset匹配所有重置按钮
:button匹配所有按钮
:file匹配所有文件域 

表单过滤器

:enabled匹配所有可用元素  例:$("input:enabled")查找所有可用的input元素:  
 :disabled匹配所有不可用元素
:checked匹配所有选中的被选中元素(复选框、单选框等,不包括select中的option)
:selected匹配所有选中的option元素

过滤:

eq( index )获取第N个元素  例:$("p").eq(1) 获取匹配的第二个元素:
filter( expr )筛选出与指定表达式匹配的元素集合。 例:$("p").filter(".selected")保留带有select类的元素
filter( fn )筛选出与指定函数返回值匹配的元素集合  例:$("div").filter(function(index) {return $("ol", this).size() == 0;   
}); 保留子元素中不含有ol的元素: 
is( expr )用一个表达式来检查当前选择的元素集合,如果 其中至少有一个元素符合这个给定的表达式就 返回true。例:$("input[type='checkbox']").parent().is("form")由于input元素的父元素是一个表单元素,所以返回true
map( callback )将一组元素转换成其他数组(不论是否是元素数 组)
not( expr )删除与指定表达式匹配的元素   例:$("p").not( $("#selected")[0] ) 从p元素中删除带有select 的ID的元素
slice( start, end )选取一个匹配的子集   例:$("p").slice(0, 1);选择第一个p元素

查找:

add( expr ) 把与表达式匹配的元素添加到jQuery对象中。这个 函数可以用于连接分别与两个表达式匹配的元素结果集。 
动态生成一个元素并添加至匹配的元素中:
例:$("p").add("<span>Again</span>") 
children( [expr] )取得一个包含匹配的元素集合中每一个元素的所有子 元素的元素集合。可以通过可选的表达式来过滤所匹配的子元素。注意:parents()将查找所有祖辈元素,而children()只考 虑子元素而不考虑所有后代元素。 
例:$("div").children()查找DIV中的每个子元素:
closest( [expr] ) 取得与表达式匹配的最新的父元素  为事件源最近的父类li对象更换样式:
例:$(document).bind("click", function (e) {          $(e.target).closest("li").toggleClass("hilight");  
});
contents( ) 查找匹配元素内部所有的子节点(包括文本节点)。 如果元素是一个iframe,则查找文档内容 查
例:$("p").contents().not("[nodeType=1]").wrap("<b>") 找所有文本节点并加粗
find( expr ) 搜索所有与指定表达式匹配的元素。这个函数是找出 正在处理的元素的后代元素的好方法。 
例:$("p").find("span")从所有的段落开始,进一步搜索下面的span元素。
  next( [expr] ) 取得一个包含匹配的元素集合中每一个元素紧邻的后 
面同辈元素的元素集合。 这个函数只返回后面那个紧邻的同辈元素,而不是后面所有的同辈元素(可以使用nextAll)。可以用一 个可选的表达式进行筛选。找到每个段落的后面紧邻的同辈元素:  
例:$("p").next()
nextAll( [expr] ) 查找当前元素之后所有的同辈元素可以用表达式过滤 。 
例:$("div:first").nextAll().addClass("after");给第一个div之后的所有元素加个类:
offsetParent( ) 返回第一个有定位的父类(比如(relative或 absolute)).  
parent( [expr] ) 取得一个包含着所有匹配元素的唯一父元素的元素集
合。 你可以使用可选的表达式来筛选。 
例:$("p").parent()查找每个段落的父元素:
parents( [expr] ) 取得一个包含着所有匹配元素的祖先元素的元素集合
(不包含根元素)。可以通过一个可选的表达式进行
例:$("span").parents() 找到每个span元素的所有祖先元素:
prev( [expr] ) 取得一个包含匹配的元素集合中每一个元素紧邻的前 一个同辈元素的元素集合。可以用一个可选的表达式进行筛选。只有紧邻的同辈 元素会被匹配到,而不是前面所有的同辈元素。 
例:$("p").prev()找到每个段落紧邻的前一个同辈元素:
prevAll( [expr] ) 查找当前元素之前所有的同辈元素可以用表达式过滤。
例:$("div:last").prevAll().addClass("before");给最后一个之前的所有div加上一个类:
siblings( [expr] ) 取得一个包含匹配的元素集合中每一个元素的所有唯
一同辈元素的元素集合。可以用可选的表达式进行筛选。
例:$("div").siblings()找到每个div的所有同辈元素:

串联

andSelf( )对于筛选或查找后的元素,要加入先前所选元素
例:$("div").find("p").andSelf().addClass("border","solid 1px blue")选取所有div以及内部的p,并加上border类: 
end( )回到最近的一个"破坏性"操作之前。将匹配的元素列表变为前一次的状态。
例:$("p").find("span").end()







评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值