jQuery选择器

来源:互联网 发布:数据库isnull 编辑:程序博客网 时间:2024/06/07 19:16

jQuery中,使用$("selector")定位DOM中的元素,进而使用方法对元素进行操作。所以能够随心所欲的$()到每一个元素,显得尤为关键。

CSS中的选择器$()都可以使用,并且在jQuery中大量使用了伪类来进行更加精确的定位。

常用jQuery选择器:

1、元素名称选择器 ,例如: $("p") ,定位了p元素。但是和css批量选择设定样式不同,如果有很多该类元素(通常是这样的),就不能精确定位。

2、后代元素选择器,例如:

$("p em")定位了p所有的后代em元素

$("p>em")定位了p元素的直接子em元素

$("h1+p")定位了h1元素后面紧邻着的p元素

$("h1~p")定位了任何属于同一父元素的同胞h1 后面的p

3、属性选择器,可以根据属性名称、属性值,或者属性中包含的字符进行判断。例如:

      $("section[contenteditable]")   有contenteditable属性的section元素

      $("p[lang = es]")   lang = "es"的p元素

      $("a[href  $='.pdf"])  属性值以.pdf结尾

      $("a[href  *= '.pdf']") 属性中包含.pdf

      $("a[href != '.pdf']") 属性中不包含.pdf

      $("a[href ^= 'stm32']") 属性中以stm32开始      

4、其他类选择器

      $("[class| = red]")   $("[class^=red]")     $("[class*=red]")  类名中包含red字符,或的逻辑。   

5、其他普通的css元素如类选择器、id选择器都是用于jQuery的$("")选择器,除了id选择器,其他都或多或少的存在唯一性不足的问题。所以,我认为在jQuery中中,使用伪类来精确定位元素,是非常有用的。例如:

     $("p:first>em")或者$("p:eq(0)>em") 定位了所有p元素中的第一个。

     $("tr:first-child")  $("tr:nth-child(1)")  $("tr:last-child")等精确选择了第几个子元素。

     $("tr:even")  $("tr:odd") $("p em:only-child")等选择了奇偶数,以及其他限制条件。

    

0 0
原创粉丝点击