乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      jQuery的核心功能選擇器

       Coder編程 2020-08-06

      選擇器是jquery的核心

      jquery選擇器返回的對(duì)象是jquery對(duì)象,不會(huì)返回undefined或者null,因此不必進(jìn)行判斷


       

      基本選擇器:

      ID選擇器  $("#ID")

      element選擇器(標(biāo)簽選擇器)$("標(biāo)簽")  如 $("div") 

      獲取具體的標(biāo)簽,使用數(shù)組下標(biāo)的方式  $("div")[index]

      獲取當(dāng)前元素的索引值 $(this).index()  

      class選擇器  $(".類名")  

      通配符選擇器 $("*")  匹配所有元素,盡量不要用,效率比較低


       

      多項(xiàng)選擇器:

      $("selector1, selector2, selector3...")  合并返回,每個(gè)選擇器之間用逗號(hào)隔開

      如果不同選擇器的內(nèi)容之間有重復(fù),會(huì)自動(dòng)舍去重復(fù)

      返回的數(shù)組中的順序是根據(jù)DOM中元素的順序,而不是根據(jù)選擇器的順序


       

      層級(jí)選擇器

      祖先后代選擇器: $("父元素 子孫元素")  中間用空格分開

      如:獲取aside里面的summary元素

      var summaries=$("aside summary");

      直接后代選擇器:$("父元素>子元素")  中間用 >

      如:獲取aside下面的直接子元素summary

      var summaries=$("aside>summary");

      親密兄弟選擇器:$("兄元素+弟元素")  獲取兄元素后面緊跟的一個(gè)弟元素

      如:獲取aside后面緊跟的details元素

      var summaries=$("aside+details");

      兄弟選擇器: $("兄元素~弟元素")  獲取兄元素后面的所有弟元素

      如:獲取aside后面出現(xiàn)的所有兄弟元素details

      var summaries=$("aside~details");

      屬性選擇器:

      [attribute]  包含該屬性的元素,如:$("[class]")

      [attribute=value]  屬性值等于指定值的元素,如:$("[class=tool]")

      [attribute!=value]  屬性值不等于指定的元素,如:$("[class!=tool]")

      [attribute^=value]  屬性值以指定元素開頭,是單詞的開頭部分,如:$("[class^=tool]")

      [attribute$=value]  屬性值以指定元素結(jié)束,是單詞的結(jié)束部分,如:$("[class$=tool]")

      [attribute*=value]   屬性值包含指定元素,可以是單詞的一部分,也可以是一個(gè)單獨(dú)的單詞,如:$("[class*=tool]")

      [attribute~=value]  常用于多個(gè)class的情況,只要其中一個(gè)class是指定值,是一個(gè)完整的單詞,如:$("[class~=tool'")

      <!DOCTYPE html>
      <html lang="en">
      <head>
          <meta charset="UTF-8">
          <title>Document</title>
          <script src="jquery.js"></script>
          <script>
              $(function(){
                  var div1=$("[class~=one]");//取到1
                  console.log(div1);
      
                  var div2=$("[class*=one]");//取到1和2
                  console.log(div2);
              })
          </script>
      </head>
      <body>
      <div class="tool one">1</div>
      <div class="tool tool_one">2</div>
      
      </body>
      </html>

       

      [selector1][selector2][selector3]  多個(gè)屬性選擇器,如:$("[type][class=tool]")


       

      過濾器之child系列(最大特點(diǎn)必須是指定元素):

      ele:first-child  其父元素的第一個(gè)子元素,且剛好是指定元素

      ele:last-child 其父元素的最后一個(gè)子元素,且剛好是指定元素

      ele:nth-child(n | even | odd | 計(jì)算式)  其父元素的第n個(gè)子元素,且剛好是指定元素(此處下標(biāo)從1開始)

      ele:nth-last-child(n | even |odd | 計(jì)算式) 其父元素的倒數(shù)第n個(gè)子元素,且剛好是指定元素(此處下標(biāo)從1開始)

      ele:only-child  是其父元素的唯一子元素,且是指定元素


       

      過濾器之type系列(最大特點(diǎn)計(jì)數(shù)時(shí)自動(dòng)跳過非指定元素):

      ele:first-of-type  其父元素的第一個(gè)指定子元素(計(jì)數(shù)時(shí)可以自動(dòng)跳過非指定元素)

      ele:last-of-type 其父元素的最后一個(gè)指定子元素

      ele:nth-of-type(n)  其父元素的第n個(gè)指定子元素

      ele:nth-last-of-type  其父元素的倒數(shù)第n個(gè)指定子元素

      ele:only-of-type  其父元素的唯一指定子元素


       

      child和type系列對(duì)比

      <!DOCTYPE html>
      <html lang="en">
      <head>
          <meta charset="UTF-8">
          <title>Document</title>
          <script src="jquery.js"></script>
          <script>
              $(function(){
                  var p=$("p:only-child()");//p的父元素只有一個(gè)子元素,且是p標(biāo)簽
                  console.log(p);
      
                  var p2=$("p:only-of-type()");//p的父元素的子元素中,只有一個(gè)p標(biāo)簽,允許有其他標(biāo)簽
                  console.log(p2);
              })
          </script>
      </head>
      <body>
      
      <div>
          <p>p</p>
          <span>span</span>
      </div>
      
      </body>
      </html>

      過濾器參數(shù)

      ele:nth-child(n)  n必須為整數(shù),從1開始

      ele:nth-of-type(n) 

      ele:nth-child(even)  偶數(shù)項(xiàng)

      ele:nth-of-type(even)

      ele:nth-child(odd)  奇數(shù)項(xiàng)

      ele:nth-of type(odd)

      ele:nth-child(3n+4)  類似特殊公式

      ele:nth-of-type(3n+4)

      小案例:

      <!DOCTYPE html>
      <html lang="en">
      <head>
          <meta charset="UTF-8">
          <title>Document</title>
          <script src="jquery.js"></script>
          <script>
              $(function(){
                  $("p:nth-of-type(even)").css({"background":"#abcdef"});
                  $("p:nth-of-type(odd)").css({"background":"pink"});
              })
          </script>
      </head>
      <body>
      
      <div>
          <p>慕道威儀立善緣</p>
          <p>課童更渫墻西井</p>
          <p>網(wǎng)羅文獻(xiàn)吾倦矣</p>
          <p>恭請(qǐng)光堯壽圣來</p>
          <p>祝教壽比天難盡</p>
          <p>學(xué)畫鴉兒猶未就</p>
          <p>習(xí)氣若為除未盡</p>
          <p>愉貴神兮般以樂</p>
          <p>快風(fēng)涼雨火云摧</p>
      </div>
      
      </body>
      </html>

       

       表單相關(guān)選擇器:

      :input  可以選擇input  textarea  select  button

      <!DOCTYPE html>
      <html lang="en">
      <head>
          <meta charset="UTF-8">
          <title>Document</title>
          <script src="jquery.js"></script>
          <script>
              $(function(){
                  $(":input").css({"background":"#abcdef"});
              })
          </script>
      </head>
      <body>
      
      <form>
          input:text<input type="text"><br>
          select<select>
              <option></option>
          </select><br>
          textarea<textarea></textarea><br>
          input:submit<input type="submit" value=""><br>
          button<button>按鈕</button>
      </form>
      
      </body>
      </html>

       

       :text  =  input[type="text"]  匹配所有單行文本框

      <!DOCTYPE html>
      <html lang="en">
      <head>
          <meta charset="UTF-8">
          <title>Document</title>
          <script src="jquery.js"></script>
          <script>
              $(function(){
                  $(":text").css({"background":"#abcdef"});
              })
          </script>
      </head>
      <body>
      
      <form>
          input:text<input type="text"><br>
          select<select>
              <option></option>
          </select><br>
          textarea<textarea></textarea><br>
          input:submit<input type="submit" value=""><br>
          button<button>按鈕</button>
      </form>
      
      </body>
      </html>

       

       其他type類型也是同理,如:

      :password  :radio  :checkbox  :reset  :submit  :image  :button  :file

      其中發(fā)現(xiàn):submit也選中了button元素

      <!DOCTYPE html>
      <html lang="en">
      <head>
          <meta charset="UTF-8">
          <title>Document</title>
          <script src="jquery.js"></script>
          <script>
              $(function(){
                  $(":password").css({"background":"#abcdef"});
                  $(":file").css({"background":"pink"});
                  $(":submit").css({"background":"orange"});
              })
          </script>
      </head>
      <body>
      
      <form>
          input:text<input type="text"><br>
          input:password<input type="password"><br>
          input:file<input type="file"><br>
          select<select>
              <option></option>
          </select><br>
          textarea<textarea></textarea><br>
          input:submit<input type="submit" value=""><br>
          button<button>按鈕</button>
      </form>
      
      </body>
      </html>

       

       表單狀態(tài)相關(guān)選擇器:

      :enabled 可用元素

      :disabled 不可用元素

      :checked  選中元素(除了checkbox和radio中被checked元素,還有option中被selected的元素)

      :selected 選中option中被selected的元素


       

      查找和過濾選擇器

      .find("元素")  搜索與指定表達(dá)式匹配的元素(類似祖先后代子孫選擇器)

      .children("元素")  搜索與指定表達(dá)式匹配的元素(類似直接父子元素選擇器)

      .parent("元素")  搜索一個(gè)元素的父元素

      <!DOCTYPE html>
      <html lang="en">
      <head>
          <meta charset="UTF-8">
          <title>Document</title>
          <script src="jquery.js"></script>
          <script>
              $(function(){
                  $("details").find("p").css({"background":"#abcdef"});//內(nèi)容1和內(nèi)容2
                  $("details").children("p").css({"color":"orange"});//內(nèi)容1
              })
          </script>
      </head>
      <body>
      
      <details>
          <summary>標(biāo)題1</summary>
          <p>內(nèi)容1
              <div>
                  <p>內(nèi)容2</p>
              </div>
          </p>
      </details>
      
      </body>
      </html>

       

       .next() 緊跟在元素后面的直接兄弟元素

      .prev() 緊跟在元素前面的直接兄弟元素

      .eq(n) 元素返回的數(shù)組中第n個(gè)元素,下標(biāo)是從0開始的;如果n是負(fù)數(shù),就是倒數(shù)

      .siblings() 元素的所有同級(jí)兄弟元素(前面后面都可以,不包括元素本身),中間可以加選擇器

      <!DOCTYPE html>
      <html lang="en">
      <head>
          <meta charset="UTF-8">
          <title>Document</title>
          <script src="jquery.js"></script>
          <script>
              $(function(){
                  $(".p").next().css({"background":"#abcdef"});
                  $(".p").prev().css({"background":"pink"});
                  $("p").eq(2).css({"background":"orange"});
                  $("p").eq(-1).css({"background":"lightgreen"});
                  $(".p").siblings().css({"font-style":"italic"});
                  $(".p").siblings("[id]").css({"font-weight":"bold"});
              })
          </script>
      </head>
      <body>
      
      <div>
          <p>1</p>
          <p id="p2">2</p>
          <p class="p">3</p>
          <p id="p4">4</p>
          <p>5</p>
      </div>
      
      </body>
      </html>

       

       .filter(expr | object | element | fn)  參數(shù)如果用 [ ] 表示為可選參數(shù)

      expr 字符串值,選擇器表達(dá)式,如:filter( ".class" )

      object 現(xiàn)有的jquery對(duì)象,如:filter( $(".class") )

      element  DOM元素,如:fliter( document.getElementById("class") ) 

      fn 函數(shù)的返回值(index是filter方法的默認(rèn)參數(shù),表示當(dāng)前元素的索引值)

      expr | object | element 其實(shí)都是通過選擇器查找的意思

      <!DOCTYPE html>
      <html lang="en">
      <head>
          <meta charset="UTF-8">
          <title>Document</title>
          <script src="jquery.js"></script>
          <script>
              $(function(){
                  $("p").filter(function(index){
                      console.log(index);
                  });
              })
          </script>
      </head>
      <body>
      
      <div>
          <p>1</p>
          <p id="p2">2</p>
          <p class="p">3</p>
          <p id="p4">4</p>
          <p>5</p>
      </div>
      
      </body>
      </html>

       

       filter的另一種用法:

              var arr=[2,5,33];
              function fn(num){
                  return num>18;//返回大于18的元素
              }
              var res=arr.filter(fn);
              console.log(res);//[33]
      <!DOCTYPE html>
      <html lang="en">
      <head>
          <meta charset="UTF-8">
          <title>Document</title>
          <script src="jquery.js"></script>
          <script>
              $(function(){
                  $("div").filter(function(index){
                      //在當(dāng)前對(duì)象內(nèi),尋找P元素的個(gè)數(shù)為1的div
                      return $("p",this).length===1;
                  }).css({"background":"#abcdef"});
              })
      
          </script>
      </head>
      <body>
      
      <div>
          <p>文字</p>
      </div>
      
      <div>
          <p>文字</p>
          <p>文字</p>
      </div>
      
      </body>
      </html>

       

       關(guān)于隱式迭代:

      類似遍歷數(shù)組,使用$(this) 返回當(dāng)前觸發(fā)的元素

      不再需要像js那樣循環(huán)

      <!DOCTYPE html>
      <html lang="en">
      <head>
          <meta charset="UTF-8">
          <title>Document</title>
          <script src="jquery.js"></script>
          <script>
              $(function(){
                  $("p").click(function(index){
                      $(this).css({"background":"pink"});
                  });
              })
      
          </script>
      </head>
      <body>
      
      <div>
          <p>文字</p>
          <p>文字</p>
      </div>
      
      </body>
      </html>

       

        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶 評(píng)論公約

        類似文章 更多