jquery选择器

jquery选择器
基本选择器最简单的也是最常用的。
基本选择器 $("#test")   选取id为test的元素。    返回单个元素$(".test")   选取类名为test的元素。  返回集合元素$("*")       选取所有元素            返回集合元素 $("div,span,.myclass") 选择所有的<div>,<span>,和拥有类名为myclass的标签的一组元素     返回集合元素

 

示例:
$("#one").css("backround","red"); 选择id为one的元素,改变他的背景为red$(".one").css("ackround","red");  选择类名为one的多有元素,改变他们的背景为rded$("*").css("ackround","red");     选择所有的元素,改变他们的背景为red$("div,span")                     选择所有的div和span ,改变他们的背景为red
层次选择器
通过层次选择器可以通过dom元素之间的层次关系获取特定的元素,例如后代元素,子元素,相邻元素和兄弟元素
$("ancestor descendant(后代)")  集合元素    选取父代ancestor中所有的子代descendant元素  $("div span") 选择所有的div中span元素

$("parent>child")  集合元素    选取parent元素下的child元素

,$(‘prev + next‘)  集合元素  选取紧跟在prev元素后满地next元素 $('.one + div') 选取class为one的下一个的兄弟元素。

$(’prev~sibiling‘)集合元素 选取prev之后所有的sibiling元素$('#two~div')选取id为two的元素后面的所有的div的兄弟元素。


$("prev").siblings("div"),选取prev的同辈的所有的div元素,无论前后位置。

$('.one + div’) 把class为one的元素下的第一个元素后面的div改变颜色 可以使用next的方法来代替$('prev + next ')的。

$('.one + div’)等效于$(".one").next("div") 可以使用nextAll的方法来代替$('prev ~ next ')的。

$('.one ~ div’)等效于$(".one").nextAll("div") 

 

过滤选择器
分为基本过滤器,内容过滤器,可见性过滤。属性过滤,子元素过滤,和表单过滤。
基本过滤:

:first 选取第一个元素。 单个元素。 $("div:first") 选取所有的div中的第一个div元素。

: last  选取最后一个元素。 单个元素 $ ("div:last")  选取所有的div中的最后一个div元素。

:not(selector)选取所有与非idngde选择器不匹配的元素。 集合元素。 $("input:not(.myclass)")选取class不是.myclass的所有的input元素

:even 选取索引是偶数的元素。索引从0开始。 集合元素。$("input:even") 选取索引是偶数的input元素。

:odd   选取索引是奇数的元素。索引从0开始。集合元素。$("input:odd")   选取索引是奇数的input元素。

:eq(index)  选取索引等于index的元素,索引从0开始。 单个元素。 $("input:eq(1)")选取索引为1的input元素。

:gt(index)选取索引大于index的元素,索引从0开始。 集合元素。 $("input:gt(1)")选取索引大于1 的input元素。

:lt(index)选取索引小于index的元素,索引从0开始。 集合元素。 $("input:lt(1)")选取索引小于1的input元素。

:header   选取多有的标题元素。h1 , h2 ,h3等等。 集合元素。 $(":header")可以选择网页中所有的标题元素。

:animated 选取当前正在执行的动画的所有的元素。

 

内容过滤选择器

主要体现在它包含的子元素活着文本内容上。

:contains(text) 选取含有文本内容为"text"的元素。 集合元素。 $("div:contain('我')")  选择div中的内容中包含“我“的div

:empty         选取不包含子元素活着文本的空元素。  集合元素。 $("div:empty")       选择空的div元素,进行操作。

:has(selector) 选取含有选择器所匹配的元素的元素。   集合元素。 $("div:has(p)") 

:parent        选取所有含有子元素活着文本的元素。   集合元素.   $("div:parent")    选择所有的不为空 的div的元素。


可见性选择器

 

:hidden  选取所有的不可见元素。。 集合元素。$(":hidden")选取所有的不可见元素。$("input:hidden")选取所有的隐藏的input元素

:visible  选取所有的可见元素。     集合元素。 $(":visible")选取所有的可见元素。$("input:visible")选取所有的可见的input元素


属性选择器

过滤规则是通过元素的属性来获取相应的元素。

[attribute]  选择拥有这个属性的元素    $("div[id]")选取拥有id属性的元素[attribute=value]选择属性值为value的元素  集合元素  $("div[title=test]") 选取title属性值为test的id元素

[attribute!=value]选择属性值不为value的元素  集合元素  $("div[title!=test]") 选取title属性值不为test的id元素[attribute^=value]选取属性值一value开始的元素。  集合元素   $("div[title^=test]")选取属性以title开始的div元素。

[attribute$=value]选取属性值以value结束的元素。  集合元素    $("div[title$=test]")选取属性值title以test结束的元素[attribu*=value]选取属性值含有value的元素   集合元素   $("div[title*=test]")  选取所有属性title值为test的div

[selector1][selector2][selectorN]  复合选择器,集合元素。$("div[title=test][id]")拥有属性id的值,并且属性title的值是test的div元素


子元素过滤选择器

:nth-child(index/even/odd/equation)选取每个傅元素下的第index个子元素或奇偶元素(index从1开始) 集合元素  

 :first-child 选取父元素的第一个元素    集合元素    :first只返回一个元素  $("ul:first-child")选取所有的ul的第一个里元素

:last-child  选取父元素的最后一个元素,集合元素    :last只返回一个元素  $("ul:last-child")选取所有ul的最后一个元素

:only-child  如果某个元素是父元素中唯一的子元素,那么将会被匹配。如果含有其他子元素,则不匹配。  集合元素。:nth-child()是最常用的子元素的过滤器。:nth-child(even)选取每个父元素下的索引值是偶数的元素。索引从1开始。

:nth-child(odd)能选取每个父元素下的索引值的奇数的元素。:nth-child(2)选取每个父元素下索引值是2的元素。


表单对象属性过滤选择器

:enabled    选取所有可用元素   集合元素   $("#form1:enabled")选取id为form的表单内所有的可用元素。

:disabled   选取所有的不可用的元素   集合元素   $("#form:disabled") 选择id为form的表单内的所有的不可用元素。

:checked    选取所有的被选中的元素单选框复选框  $("input:checked")选择所有的被选中的<input>元素

:selected   选取被选中的选项元素(下拉列表)    $("select:selected")选取所有的被选中的选项元素
$("#form input:enabled").val("这里变化了") 选取可用的input的值,改变他的默认$("#form input:disabled").val("改变了不可用的input的值。")$("input:checked").length;选取多选框里选中的个数$("select:selected").text();  获取下拉选中的内容


表单选择器

:input    选择所有的input  textarea  select  button 元素  集合元素

:text      选取所有的单行文本框

:password   选取所有的密码框

:radio        选取所有的单选框

:checkbox       选取所有的复选框

:submit           选取所有的提交按钮

:reset              选取所有的的重置按钮

:image                选取所有的图像按钮

:button                 选取所有的按钮

:file                     选取所有的上传域

:hidden                    选取所有的不可见元素

 

附学习实验网页:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head>    <title>test</title>    <script src="../jquery/jquery-1.4.2.js" type="text/javascript"></script></head><style>.one{    width:100px;    height:100px;    position:relative;    float:left;    background:red;    margin-left:20px;    margin-top:10px;   }   .two{    width:100px;    height:100px;    position:relative;    float:left;    background:red;    margin-left:20px;    margin-top:10px;   } #main {     border:1px soild black;  }</style><script>    function down1() {        $("div:first").css("background", "black");    }    function down2() {        $('div:last').css("background", "black");    }    function down3() {        $('div:not(#one)').css("background", "black");    }    function down4() {        $("div:nth-child(even)").css("background", "black");    }    function down19() {        $("div:even").css("background", "green");    }    function down5() {        $('div:odd').css("background", "black");    }    function down6() {        $('div:eq(4)').css("background", "black");    }    function down7() {        $('div:gt(4)').css("background", "black");    }    function down8() {        $('div:lt(4)').css("background", "black");    }    function down9() {        $("div:contains('one')").css("background", "black");    }    function down10() {        $("div:empty").css("background", "black");    }    function down11() {        $("div:parent").css("background", "black");    }    function down12() {        $(":visible").css("background", "black");    }    function down13() {        $("div:hidden").css("background", "green");        $("div:hidden").css("display", "block");
    }    function down14() {        $("input:hidden").css("display","block");    }    function down15() {        $("div:hidden").show(3000);    }    function down16() {        $("div[id]").css("background","green");    }    function down17() {        $("div[id][class=one]").css("background", "green");    }    function down18() {        $("div[class^=two]").css("background", "green");    }</script><body><div id="one" class="one">id等于one class为one</div><div id="two" class="one">id等two class为one</div><div id="three" class="two">class为two</div><div class="one">class为one</div><div class="one">class为one</div><div class="one">class为one</div><div class="two">class为two</div><div id="one" class="one">id等于one class为two</div><div id="two" class="one">id等于two class为two</div><div class="one">class=one</div><div class="one">class=one</div><div class="one">class=one</div><div class="one" style="display:none;">这是隐藏的div</div><div class="one" style="display:none;">这是隐藏的div</div><div id="main" style="width:900px; height:auto ; position:relative; float:left;"><input type="button" style="display:none;"value="这是隐藏的按钮" onclick="alert('我出来了!自由了!')" />
<input type="button" onmousedown="down1();" value="第一个div变黑色"/><input type="button" onmousedown="down2();" value="最后的div变黑色"/><input type="button" onmousedown="down3();" value="id不是one的div变黑色"/><input type="button" onmousedown="down4();" value=":nthchild(even)让索引是偶数的div变黑色,index从1开始"/><input type="button" onmousedown="down19();" value=":even让索引是偶数的div变黑色,index从0开始"/><input type="button" onmousedown="down5();" value="索引是奇数div变黑色"/><input type="button" onmousedown="down6();" value="索引为4的第五个div变黑色换" /><input type="button" onmousedown="down7();" value="索引大于4的前四个div变黑色"/><input type="button" onmousedown="down8();" value="索引小于4的div变黑色"/><input type="button" onmousedown="down9();" value="选择所有的含有one的元素"/><input type="button" onmousedown="down10();" value="选择所有的空的div"/><input type="button" onmousedown="down11();" value="选择所有的非空的div"/><input type="button" onmousedown="down12();" value="所有显示的div变色"/><input type="button" onmousedown="down13();" value="隐藏的div显示并且变色"/><input type="button" onmousedown="down14();" value="显示隐藏的input"/><input type="button" onmousedown="down15();" value="隐藏的div在3秒内显示出来"/><input type="button" onmousedown="down16();" value="选择含有id属性的div并且变色"/><input type="button" onmousedown="down17();" value="选择拥有id并且class值为two的div"/><input type="button" onmousedown="down18();" value="div"/></div></body></html>

posted @ 2010-08-16 08:59  ActionBi  阅读(981)  评论(0编辑  收藏  举报