1. 程式人生 > >jQuery容易忽略的選擇器

jQuery容易忽略的選擇器

  1. 選擇器:
    1. 偽類選擇器(標籤+一個英文冒號)
      $("ul li:eq(3)")
      $("li:even")
      $("li:odd")
    2.  

      表單選擇器(一個英文冒號+表單屬性)

      $(":checkbox")
      $(":checked")
      $(":text")

      3.屬性選擇器(選擇某個屬性或者是某個屬性屬於某個值)

      $("li[id]")
      $("li[id='link']")

       

2.其他選擇器:

  • 選擇所有的元素:$("*");
  • 可一次選擇多個元素,用逗號隔開;
  • 可以按選擇類的方式選擇元素;
  • 可選擇奇數(odd)或者是偶數(even),可之間選擇第一個(first)或者是最後一個(last),中間用冒號隔開;
  • :eq(index)直接選擇下標為index的元素,:gt(index)選擇下標大於index的元素,:lt(index)選擇下標小於index的元素,:not(selector)滿足不為xx條件的元素;eg:$('input:not(:empty)')所有不為空的input元素。
  • :header所有的標題元素<h1>--<h6>,:animated所有正在執行的動畫元素;
  • :contains(text)     $(":contains('W3School')")  包含指定字串的所有元素
    :empty              $(":empty")                 無子(元素)節點的所有元素
    :hidden             $("p:hidden")               所有隱藏的 <p> 元素
    :visible            $("table:visible")          所有可見的表格

    屬性選擇器:

    [attribute]         $("[href]")         所有帶有 href 屬性的元素
    [attribute=value]   $("[href='#']")     所有 href 屬性的值等於 "#" 的元素
    [attribute!=value]  $("[href!='#']")    所有 href 屬性的值不等於 "#" 的元素
    [attribute$=value]  $("[href$='.jpg']") 所有 href 屬性的值包含以 ".jpg" 結尾的元素

    表單選擇器:

    :input      $(":input")         所有 <input> 元素
    :text       $(":text")          所有 type="text" 的 <input> 元素
    :password   $(":password")      所有 type="password" 的 <input> 元素
    :radio      $(":radio")         所有 type="radio" 的 <input> 元素
    :checkbox   $(":checkbox")      所有 type="checkbox" 的 <input> 元素
    :submit     $(":submit")        所有 type="submit" 的 <input> 元素
    :reset      $(":reset")         所有 type="reset" 的 <input> 元素
    :button     $(":button")        所有 按鈕元素(<button></button> 或者 input="button")
    :image      $(":image")         所有 type="image" 的 <input> 元素
    :file       $(":file")          所有 type="file" 的 <input> 元素

    選擇啟用、禁用、被選取、被選中的input元素

    :enabled    $(":enabled")   所有啟用的 input 元素
    :disabled   $(":disabled")  所有禁用的 input 元素
    :selected   $(":selected")  所有被選取的 input 元素
    :checked    $(":checked")   所有被選中的 input 元素

    3.jQuery關係選擇器

找父親:

$(selector).parent();     //獲取直接父級
$(selector).parents('p'); //獲取所有父級元素直到html
  • 找後代
  • * $(selector).children();   //獲取直接子元素
    * $(selector).find("span"); //獲取所有的後代元素  find方法 可能用的多。

     

  • 找前後同級
  • $(selector).siblings()    //所有的兄弟節點
    $(selector).next()        //下一個兄弟節點
    $(selector).nextAll()     //後面的所有節點
    $(selector).prev()        //前面一個的兄弟節點
    $(selector).prevAll()     //前面的所有的兄弟節點

     

  • 過濾方法(這裡有選擇自定義類的(filter)和不要自定義類的)
  • $("p").eq(1);           //取第n個元素
    $("div p").last();        //取最後一個元素
    $("div p").first();       //取第一個元素
    $("p").filter(".intro");  //過濾,選擇所有p標籤帶有 .intro類
    $("p").not(".intro");     //去除,跟上面的filetr正好相反