亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

jQuery 關于偽類選擇符的使用說明

2019-11-20 22:46:52
字體:
來源:轉載
供稿:網友

   jQuery選擇器的強大不僅在于選擇器支持基本的css選擇符,還支持很多CSS的偽類選擇符,甚至可以自定義選擇符,下面讓我們來看看一些偽類選擇符

  :nth-child的用法
         nth-child是一個css3偽類選擇符,在jQuery中被實現了,在Jquery API中對nth-child的定義是:”匹配其父元素下的第N個子或奇偶元素“。讀著感覺有點繞口,下面讓我們通過例子來說明:

復制代碼 代碼如下:

<div>
    <ul>
    <li>one</li>
    <li>two</li>
    <li>three</li>
    <li>four</li>
    <li>five</li>
    <li>six</li>
    <li>seven</li>
    <li>eight</li>
    <li>nine</li>
    </ul>
    <ul>
    <li>1</li>
    <li>2</li>
    <li>3</li>
    <li>4</li>
    <li>5</li>
    <li>6</li>
    <li>7</li>
    <li>8</li>
    <li>9</li>
    </ul>
    </div>
    <script type="text/javascript">
        $("li:nth-child(2)").css("background-color", "blue");
    </script>

運行效果如下:

  1    

API定義中的匹配其父輩指的是所選元素的父元素不同,則分開選擇。在上面例子中雖然一共選擇18個<li>但是這18<li>分屬于2個不同的<ul>,所以會選擇兩個.如果將其放入同一個<ul>中,如果放入同一個<ul>執行上面代碼,則:

2

理解了上面匹配父輩元素,下面來說說這個選擇符參數的用法.

    向上面那樣直接給出選擇的位置,但是這里注意,這個位置是以1為開始的,而不是0 n個倍數選擇法,比如可以使3n+1,-3n+1,4n,等,匹配所有頁面上存在的n的倍數

例子:

復制代碼 代碼如下:

<div>
    <ul>
    <li>one</li>
    <li>two</li>
    <li>three</li>
    <li>four</li>
    <li>five</li>
    <li>six</li>
    <li>seven</li>
    <li>eight</li>
    <li>nine</li>

    </ul>
    </div>
    <script type="text/javascript">
        $("li:nth-child(3n-1)").css("background-color", "blue");
    </script>

效果:

3

可見相對應的元素都被匹配

   3.還有一種用法是我們熟知的odd和even,就是奇數和偶數,如下:

復制代碼 代碼如下:

   <script type="text/javascript">
        $("li:nth-child(odd)").css("background-color", "blue");
    </script>

效果:

4

 

:first-child&last-child

   從上面的nth-child可以看到”匹配父類下的“含義,first-child和last-child也同樣是這樣.它們可以看做nth-child的封裝:

first-child和nth-child(1)等價,這里就不多說了.

而first-child目前我還找不到等價的nth-child表達式,匹配父類下的最后一個子元素:
效果:

5

:input并不只是匹配input

   個選擇符我想大家都比較熟悉,但是要注意,input偽類選擇符不只是匹配<input>標簽,還會匹配<select>和<textarea>:

復制代碼 代碼如下:

第一個:<input type="input" />
第二個:<select id="select">

</select>
第三個:<textarea></textarea>
<script type="text/javascript">
    alert($(":input").length);//alert 3
</script>   


 可以看到,不光<input>被選擇,<select>和<textarea>也被選擇了

偽類選擇符可以嵌套

   通常情況下,我們可以通過嵌套偽類選擇符來達到我們需要的效果,偽類選擇符,如下:

復制代碼 代碼如下:

<ul>
    <li>1</li>
    <li>2</li>
    <li>3</li>
    <li>4</li>
    <li>5</li>
    <li>6</li>
    <li>7</li>
    </ul>

    <script type="text/javascript">
        $("li:not(:first):not(:last)").css("background-color", "blue");
    </script>


效果:

   z11111111111111111111111

   可見,除了第一個和最后一個li,其它都被選擇.當然,嵌套是有層數限制的,具體的次數我就不太清了(各位高手記得麻煩告訴我下),反正夠你進行不是變態的使用:-)

自定義偽類選擇符

   jquery還提供給我們擴展原有選擇符的方式,可以讓我們根據自己的需要自定義選擇符,下面通過一個有實際意義的例子看如何做到:

   在我們使用jquery的serialize方法將當前表單中的元素提交到服務器時,總是會選上asp.net的ViewState(<input type=”hidden” />)這無疑浪費了好多資源,我們通過一個擴展的偽類選擇符看如何不選擇它:

復制代碼 代碼如下:

<form name="form1" method="post" action="default.aspx" id="form1">
<div>
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUJNzgzNDMwNTMzZGRWxo4mg/noF3+7k/L7nyw13HVnLQ==" />
</div>


    <script type="text/javascript">
        $.expr[":"].noViewState = function(element) {
            return !$(element).attr("id") === "_VIEWSTATE";
        }
        alert($(":input:noViewState").size());//alert 0 ViewState has not been choosen
    </script>

    </form>   


通過$.expr的方式對偽類選擇符進行擴展,可以看出,上面的選擇符使用:noViewState后,viewState沒有被選擇. 

小結:

    jQuery的偽類選擇符是很強大的一項功能,它內置了很多種方便我們選擇的選擇符,我們可以嵌套甚至擴展這些偽類選擇符.這讓我們的js編程更加愉悅了許多.

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
中文日韩电影网站| 国产91在线高潮白浆在线观看| 国产精品成人免费视频| 欧美性猛交xxxx富婆弯腰| 亚洲国产黄色片| 色视频www在线播放国产成人| 亚洲精品suv精品一区二区| x99av成人免费| 欧美日韩裸体免费视频| 精品视频—区二区三区免费| 精品国偷自产在线| 成人黄色在线免费| 国产精品草莓在线免费观看| 91亚洲va在线va天堂va国| 国产日韩在线看| 久久亚洲综合国产精品99麻豆精品福利| 国产精品一区二区3区| 国产亚洲精品久久久久久牛牛| 欧美日本国产在线| 懂色aⅴ精品一区二区三区蜜月| 精品香蕉一区二区三区| 一区二区三欧美| 欧美精品18videos性欧美| 精品一区精品二区| 97精品一区二区三区| 久久91超碰青草是什么| 亚洲成人av资源网| 91九色单男在线观看| 日韩av电影在线网| 日韩视频―中文字幕| 97婷婷涩涩精品一区| 国产精品成人在线| 亚洲欧美在线第一页| 色哟哟网站入口亚洲精品| 久久久久久高潮国产精品视| 91系列在线播放| 日韩美女视频免费在线观看| 欧美一级淫片videoshd| 久久99国产精品久久久久久久久| 大荫蒂欧美视频另类xxxx| 深夜福利国产精品| 亚洲成人性视频| 国产精品入口夜色视频大尺度| 色av吧综合网| 欧美日韩成人在线观看| 欧美伦理91i| 国产一区二区日韩精品欧美精品| 国产不卡精品视男人的天堂| 日本高清久久天堂| 日韩综合中文字幕| 亚洲视频在线免费观看| 国产午夜精品一区二区三区| 亚洲精品一区在线观看香蕉| 国产精品偷伦一区二区| 亚洲精品美女久久久| 亚洲免费影视第一页| 国产精品羞羞答答| 在线精品视频视频中文字幕| 国产精品第七十二页| 日韩电影中文字幕一区| 日韩av综合网| 欧美日韩国产91| 国产一区二区三区日韩欧美| 亚洲成色999久久网站| 国产午夜精品免费一区二区三区| 久久免费高清视频| 91视频免费在线| 国产亚洲欧美视频| 国产精品九九久久久久久久| 日韩视频在线免费观看| 国产精品视频一| 欧美成人免费在线视频| 国产色综合天天综合网| 日韩精品视频在线播放| 日韩在线视频免费观看高清中文| 国产一区私人高清影院| 国产伦精品一区二区三区精品视频| 最新69国产成人精品视频免费| 国产一区私人高清影院| 亚洲天堂男人天堂女人天堂| 亚洲激情在线观看| 亚洲欧美激情四射在线日| 亚洲乱码国产乱码精品精天堂| 国产欧美在线视频| 91av视频在线观看| 久久av在线看| 亲子乱一区二区三区电影| 亚洲大尺度美女在线| 欧美成人免费全部观看天天性色| 亚洲性夜色噜噜噜7777| 国产精品成av人在线视午夜片| 精品国产一区二区三区四区在线观看| 亚洲另类激情图| 欧美精品在线视频观看| 国产精品福利无圣光在线一区| 国模极品一区二区三区| 狠狠色噜噜狠狠狠狠97| 亚洲欧洲国产一区| 九九精品在线视频| 欧美激情视频给我| 国产一区视频在线播放| 国产精品免费一区二区三区都可以| 91sa在线看| 久久久视频免费观看| 欧美日韩亚洲一区二区三区| 久久久国产视频91| 欧美高清视频免费观看| 日本欧美国产在线| 久久999免费视频| 亚洲天堂网在线观看| 国产成人久久久精品一区| 国产精品7m视频| 日本高清视频一区| 亚洲综合一区二区不卡| 亚洲精品第一页| 精品性高朝久久久久久久| 欧美性猛交xxxx乱大交3| 国产精品白嫩初高中害羞小美女| 欧美一区二区三区图| 日韩国产高清污视频在线观看| 成人国内精品久久久久一区| 国产自产女人91一区在线观看| 亚洲黄色www网站| 亚洲自拍欧美另类| 国产精品久久一区| 中文字幕精品影院| 欧美激情第三页| 国产成人小视频在线观看| 亚洲第一精品久久忘忧草社区| 成人免费观看49www在线观看| 久久九九热免费视频| 爽爽爽爽爽爽爽成人免费观看| 欧美日韩不卡合集视频| 色偷偷综合社区| 日韩网站免费观看高清| 久久久视频在线| 国产精品久久精品| 色妞久久福利网| 欧美激情精品久久久久久| 日韩精品免费在线播放| 日本在线观看天堂男亚洲| 欧美最顶级丰满的aⅴ艳星| 欧美高清第一页| 最近2019年日本中文免费字幕| 亚洲人成毛片在线播放| xxx一区二区| 日韩在线欧美在线国产在线| 亚洲男人天堂2024| 亚洲欧洲在线免费| 欧美激情性做爰免费视频| 亚洲欧美制服综合另类| 中文字幕v亚洲ⅴv天堂| www.日韩欧美| 日本电影亚洲天堂| 97涩涩爰在线观看亚洲| 国产精品自产拍在线观看中文| 少妇高潮久久久久久潘金莲| 久久这里只有精品99| 欧美亚洲激情在线| 精品人伦一区二区三区蜜桃免费| 国自产精品手机在线观看视频| 久久中文字幕在线视频| 日韩欧美在线网址| 欧美成aaa人片在线观看蜜臀|