首頁 web前端 js教程 jquery取得css中的選擇器(實例講解)_jquery

jquery取得css中的選擇器(實例講解)_jquery

May 16, 2016 pm 05:11 PM
css選擇器 jquery

開始寫之前先複習一下元素和節點的差別:

元素是W3C文件物件模型(DOM)當中使用最廣泛的節點之一。

元素擁有關聯的「屬性」。

XmlElement類別有許多方法可以存取它的「屬性」(GetAttribute, SetAttribute, RemoveAttribute, GetAttributeNode, 等等)。

你也可以使用「Attributes」屬性來傳回一個支援「名字」或「序號」存取的「XML屬性集」。

那麼,從XmlElement類別的解釋來看,我們很容易就知道XmlNode和XmlElement類別的差別了:

XmlElement類別是只擁有“屬性”的節點,而XmlNode則是不僅擁有“屬性”,還擁有“子節點”的節點。

所以,我們在使用它們的時候,如果你需要取得或設定節點中的innerText或innerXml,那麼你就需要用XmlNode;而如果你需要取得或設定節點本身的屬性(參數)的時候,你就需要用XmlElement,當然,你也可以用(XmlElement)對XmlNode進行轉換得到。

下面開始進入正題

在javascript中,除了對id的選擇器比較好取一些,其他的都不是很好取,jquery在這一塊要比它優秀多了,提供了很多的獲取方法主要包括

1、基礎選擇器(主要包括標籤選擇器,id選擇器,類別選擇器,通用選擇器,群組選擇器)

$("#divId") 取得ID為divId的元素
 $("a") 取得所有元素

$(".bgRed") 取得所用CSS類別為bgRed的元素

$("*")取得頁面所有元素

$("#divId, a, .bgRed")取得三個符合條件的選擇器

2、層級選擇器(主要包括子元素選擇器、後代元素選擇器、緊鄰同儕元素選擇器、相鄰同儕元素選擇器)

2.1   子元素選擇器>  ===============選擇兒子元素

複製程式碼

程式碼如下:



       
  • Item 1

  •    
  • Item 2
     li>Nested item 1
  • Nested item 2
  • Nested item 3

      
   
  • Item 3 li>

  • <script>    $("ul.topnav > li").css("border", "3px double red");</script>


    這是官方的程式碼,可以參考以下其用法

    2.2   後代選擇器直接用空格表示不僅包括兒子還包括孫子........===============選擇後代元素複製程式碼

    程式碼如下:


     

         

       
       
       

       
     > input name="newsletter" />
       


     

      Sibling to form:
    <script> " form input").css("border", "2px dotted blue");</script>

    2.3    緊鄰同輩元素選擇器所有符合條件的都可以會被選擇主要是選擇一個元素之後的平行元素===============選擇指定元素的下一個平輩元素複製程式碼
    程式碼如下:

      


       
       
       

         

         
       

     

     
    <script>$("label + input").css("color", "blue").val("Labeled!")</script>

    2.4  相邻同辈元素选择器 ===============选择指定元素的所有指定的平辈元素,可以隔几个不是指定的元素
    复制代码 代码如下:

     
    div (doesn't match since before #prev)

      span#prev
     
    div sibling


     
    div sibling
    div niece

      span sibling (not div)
     
    div sibling

    <script>$("#prev ~ div").css("border", "3px groove blue");</script>

    3、表单选择器主要选择表单、用的时间要注意$(":input")注意引号里面的冒号也可以选择类型如$(":button")不过多介绍

    4、基本过滤器主要包括

    名称 说明 举例
    :first 匹配找到的第一个元素 查找表格的第一行:$("tr:first")
    :last 匹配找到的最后一个元素 查找表格的最后一行:$("tr:last")
    :not(selector) 去除所有与给定选择器匹配的元素 查找所有未选中的 input 元素: $("input:not(:checked)")
    :even 匹配所有索引值为偶数的元素,从 0 开始计数 查找表格的1、3、5...行:$("tr:even")
    :odd 匹配所有索引值为奇数的元素,从 0 开始计数 查找表格的2、4、6行:$("tr:odd")
    :eq(index) 匹配一个给定索引值的元素
    注:index从 0 开始计数
    查找第二行:$("tr:eq(1)")
    :gt(index) 匹配所有大于给定索引值的元素
    注:index从 0 开始计数
    查找第二第三行,即索引值是1和2,也就是比0大:$("tr:gt(0)")
    :lt(index) 选择结果集中索引小于 N 的 elements
    注:index从 0 开始计数
    查找第一第二行,即索引值是0和1,也就是比2小:$("tr:lt(2)")
    :header 选择所有h1,h2,p一类的header标签. 给页面内所有标题加上背景色: $(":header").css("background", "#EEE");
    :animated 匹配所有正在执行动画效果的元素 只有对不在执行动画效果的元素执行一个动画特效:

    $("#run").click(function(){
      $("div:not(:animated)").animate({ left: "+=20" }, 1000);
    });


    5、内容过滤器(主节点的子节点为文本节点)

    名称 说明 举例
    :contains(text) 匹配包含给定文本的元素 查找所有包含 "John" 的 div 元素:$("div:contains('John')")
    :empty 匹配所有不包含子元素或者文本的空元素 查找所有不包含子元素或者文本的空元素:$("td:empty")
    :has(selector) 匹配含有选择器所匹配的元素的元素 给所有包含 p 元素的 div 元素添加一个 text 类: $("div:has(p)").addClass("test");
    :parent 匹配含有子元素或者文本的元素 查找所有含有子元素或者文本的 td 元素:$("td:parent")

    6、可见性过滤器  Visibility Filters

    :hidden

    :visible

    7、属性过滤器 Attribute Filters

    名称 说明 举例
    [attribute] 匹配包含给定属性的元素 查找所有含有 id 属性的 div 元素:
    $("div[id]")
    [attribute=value] 匹配给定的属性是某个特定值的元素 查找所有 name 属性是 newsletter 的 input 元素:
    $("input[name='newsletter']").attr("checked", true);
    [attribute!=value] 匹配给定的属性是不包含某个特定值的元素 查找所有 name 属性不是 newsletter 的 input 元素:
    $("input[name!='newsletter']").attr("checked", true);
    [attribute^=value] 匹配给定的属性是以某些值开始的元素 $("input[name^='news']")
    [attribute$=value] 匹配给定的属性是以某些值结尾的元素 查找所有 name 以 'letter' 结尾的 input 元素:
    $("input[name$='letter']")
    [attribute*=value]

    匹配给定的属性是以包含某些值的元素

    查找所有 name 包含 'man' 的 input 元素:
    $("input[name*='man']")

    [attributeFilter1][attributeFilter2][attributeFilterN] 复合属性选择器,需要同时满足多个条件时使用。 找到所有含有 id 属性,并且它的 name 属性是以 man 结尾的:
    $("input[id][name$='man']")

    8.子元素過濾器 Child Filters

    名称 说明 举例
    :nth-child(index/even/odd/equation)

    匹配其父元素下的第N个子或奇偶元素

    ':eq(index)' 只匹配一个元素,而这个将为每一个父元素匹配子元素。:nth-child从1开始的,而:eq()是从0算起的!

    可以使用:
    nth-child(even)
    :nth-child(odd)
    :nth-child(3n)
    :nth-child(2)
    :nth-child(3n 1)
    :nth-child(3n 2)

    在每个 ul 查找第 2 个li:
    $("ul li:nth-child(2)")
    :first-child

    匹配第一个子元素

    ':first' 只匹配一个元素,而此选择符将为每个父元素匹配一个子元素

    在每个 ul 中查找第一个 li:
    $("ul li:first-child")
    :last-child

    匹配最后一个子元素

    ':last'只匹配一个元素,而此选择符将为每个父元素匹配一个子元素

    在每个 ul 中查找最后一个 li:
    $("ul li:last-child")
    :only-child

    如果某个元素是父元素中唯一的子元素,那将会被匹配

    如果父元素中含有其他元素,那将不会被匹配。

    在 ul 中查找是唯一子元素的 li:
    $("ul li:only-child")
    名稱
    說明 ​​舉例
    :nth-child(index/even/odd/equation) 符合其父元素下的第N個子或奇偶元素 ':eq(index)' 只符合一個元素,而這個將為每一個父元素匹配子元素。 :nth-child從1開始的,而:eq()是從0算起的! 可以使用:
    nth-child(even)
    :nth-child(odd)
    :nth-child(3n)
    :nth-child(2)
    :nth -child(3n 1)
    :nth-child(3n 2)
    在每個 ul 找第 2 個li:
    $("ul li:nth-child(2)")
    :first-child 匹配第一個子元素 ':first' 只符合一個元素,而此選擇符將為每個父元素匹配一個子元素 在每個 ul 中找第一個 li:
    $("ul li:first-child")
    :last-child 匹配最後一個子元素 ':last'只符合一個元素,而此選擇符將為每個父元素匹配一個子元素 在每個 ul 中找出最後一個 li:
    $("ul li:last-child")
    ​​:only-child 如果某個元素是父元素中唯一的子元素,那將會被符合 如果父元素中含有其他元素,那將不會被匹配。 在ul 中找出是唯一子元素的li:
    $("ul li:only-child")
    本網站聲明
    本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

    熱AI工具

    Undresser.AI Undress

    Undresser.AI Undress

    人工智慧驅動的應用程序,用於創建逼真的裸體照片

    AI Clothes Remover

    AI Clothes Remover

    用於從照片中去除衣服的線上人工智慧工具。

    Undress AI Tool

    Undress AI Tool

    免費脫衣圖片

    Clothoff.io

    Clothoff.io

    AI脫衣器

    Video Face Swap

    Video Face Swap

    使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

    熱門文章

    <🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
    3 週前 By 尊渡假赌尊渡假赌尊渡假赌
    北端:融合系統,解釋
    4 週前 By 尊渡假赌尊渡假赌尊渡假赌
    Mandragora:巫婆樹的耳語 - 如何解鎖抓鉤
    3 週前 By 尊渡假赌尊渡假赌尊渡假赌

    熱工具

    記事本++7.3.1

    記事本++7.3.1

    好用且免費的程式碼編輯器

    SublimeText3漢化版

    SublimeText3漢化版

    中文版,非常好用

    禪工作室 13.0.1

    禪工作室 13.0.1

    強大的PHP整合開發環境

    Dreamweaver CS6

    Dreamweaver CS6

    視覺化網頁開發工具

    SublimeText3 Mac版

    SublimeText3 Mac版

    神級程式碼編輯軟體(SublimeText3)

    熱門話題

    Java教學
    1670
    14
    CakePHP 教程
    1428
    52
    Laravel 教程
    1329
    25
    PHP教程
    1274
    29
    C# 教程
    1256
    24
    jQuery小技巧:快速修改頁面所有a標籤的文本 jQuery小技巧:快速修改頁面所有a標籤的文本 Feb 28, 2024 pm 09:06 PM

    標題:jQuery小技巧:快速修改頁面所有a標籤的文字在網頁開發中,我們經常需要對頁面中的元素進行修改和操作。使用jQuery時,有時候需要一次修改頁面中所有a標籤的文字內容,這樣可以節省時間和精力。以下將介紹如何使用jQuery快速修改頁面所有a標籤的文本,同時給出具體的程式碼範例。首先,我們需要引入jQuery庫文件,確保在頁面中引入了以下程式碼:&lt

    使用jQuery修改所有a標籤的文字內容 使用jQuery修改所有a標籤的文字內容 Feb 28, 2024 pm 05:42 PM

    標題:使用jQuery修改所有a標籤的文字內容jQuery是一款受歡迎的JavaScript庫,被廣泛用於處理DOM操作。在網頁開發中,經常會遇到需要修改頁面上連結標籤(a標籤)的文字內容的需求。本文將介紹如何使用jQuery來實現這個目標,並提供具體的程式碼範例。首先,我們需要在頁面中引入jQuery庫。在HTML檔案中加入以下程式碼:

    如何調整WordPress主題避免錯位顯示 如何調整WordPress主題避免錯位顯示 Mar 05, 2024 pm 02:03 PM

    如何調整WordPress主題避免錯位顯示,需要具體程式碼範例WordPress作為一個功能強大的CMS系統,受到了許多網站開發者和站長的喜愛。然而,在使用WordPress建立網站時,經常會遇到主題錯位顯示的問題,這對於使用者體驗和頁面美觀都會造成影響。因此,合理調整WordPress主題以避免錯位顯示是非常重要的。本文將介紹如何透過具體的程式碼範例來進行主題調

    H5頁面製作究竟指什麼 H5頁面製作究竟指什麼 Apr 06, 2025 am 07:18 AM

    H5 頁面製作是指使用 HTML5、CSS3 和 JavaScript 等技術,創建跨平台兼容的網頁。其核心在於瀏覽器解析代碼,渲染結構、樣式和交互功能。常見技術包括動畫效果、響應式設計和數據交互。為避免錯誤,應使用開發者工具調試;而性能優化和最佳實踐則包括圖像格式優化、減少請求和代碼規範等,以提高加載速度和代碼質量。

    使用jQuery為表格新增一行的方法介紹 使用jQuery為表格新增一行的方法介紹 Feb 29, 2024 am 08:12 AM

    jQuery是一個受歡迎的JavaScript函式庫,廣泛用於網頁開發。在網頁開發過程中,經常需要透過JavaScript動態地在表格中新增一行。本文將介紹如何使用jQuery為表格新增一行,並提供具體的程式碼範例。首先,我們需要在HTML頁面中引入jQuery函式庫。可以透過以下程式碼在標籤中引入jQuery庫:

    如何判斷jQuery元素是否具有特定屬性? 如何判斷jQuery元素是否具有特定屬性? Feb 29, 2024 am 09:03 AM

    如何判斷jQuery元素是否具有特定屬性?在使用jQuery操作DOM元素時,常會遇到需要判斷元素是否具有某個特定屬性的情況。在這種情況下,我們可以藉助jQuery提供的方法來輕鬆實現這項功能。以下將介紹兩種常用的方法來判斷一個jQuery元素是否具有特定屬性,並附上具體的程式碼範例。方法一:使用attr()方法和typeof運算子//判斷元素是否具有特定屬

    H5頁面製作的流程 H5頁面製作的流程 Apr 06, 2025 am 09:03 AM

    H5頁面製作流程:設計:規劃頁面佈局、風格和內容;HTML結構搭建:使用HTML標籤構建頁面框架;CSS樣式編寫:用CSS控制頁面外觀和佈局;JavaScript交互實現:編寫代碼實現頁面動效和交互;性能優化:壓縮圖片、代碼和減少HTTP請求,提升頁面加載速度。

    動態網頁元素XPath和Class名變化頻繁,如何穩定抓取目標a標籤? 動態網頁元素XPath和Class名變化頻繁,如何穩定抓取目標a標籤? Apr 01, 2025 pm 04:12 PM

    動態網頁元素抓取難題:應對XPath和Class名變化很多爬蟲開發者在抓取動態網頁時會遇到一個棘手的問題:目標�...

    See all articles