jQuery快速入門

来源:https://www.cnblogs.com/hwlong/archive/2018/06/05/9135078.html
-Advertisement-
Play Games

一、JQuery介紹 二、JQuery的優勢 三、jQuery庫包含功能 HTML元素選取 HTML元素操作 CSS操作 HTML事件函數 JavaScript特效和動畫 HTMLDOM遍歷和修改 AJAX Utilites 四、jQuery版本支持 1.x:相容IE768,使用最為廣泛的,官方只做 ...


一、JQuery介紹

1、jQuery是一個輕量級的、相容多瀏覽器的JavaScript庫。
2、JQuery使用戶能夠更方便處理HTML Document、Events、實現動畫效果、方便地進行Ajax交互,能極大地簡化JavaScript編程。

二、JQuery的優勢

1、一款輕量級的JS框架。jQuery核心js文件才幾十kb,不會影響頁面載入速度。
2、豐富的DOM選擇器,jQuery的選擇器用起來很方便,比如要找到某個DOM對象的相鄰元素,JS可能要寫好幾行代碼,而jQuery一行代碼就搞定了,再比如要講一個表格的隔行變色,jQuery也是一行代碼搞定。
3.鏈式表達式。jQuery的鏈式操作可以把多個操作寫在一行代碼里,更加簡潔。
4、事件、樣式、動畫支持。jQuery還建華了js操作css的代碼,並且代碼的可讀性也比js要強。
5、Ajax操作支持。jQuery簡化了AJax操作,後端只需要返回一個JSON格式的字元串就能完成與前端的通信。
6、跨瀏覽器相容。jQuery基本相容了現在主流的瀏覽器,不用再為瀏覽器的相容性問題而傷透腦筋。
7、插件擴展開發。jQuery有著豐富的第三方插件,例如:樹形菜單、日誌控制項、圖片切換插件、彈出視窗等等基本前端頁面上的組件都有對應插件,並且用jQuery插件做出來的效果很炫,並且可以根據自己需要去改寫和封裝插件,簡單實用。

三、jQuery庫包含功能

  • HTML元素選取
  • HTML元素操作
  • CSS操作
  • HTML事件函數
  • JavaScript特效和動畫
  • HTMLDOM遍歷和修改
  • AJAX
  • Utilites

四、jQuery版本支持

  • 1.x:相容IE768,使用最為廣泛的,官方只做BUG維護,功能不再新增。因此一般項目來說,使用1.x版本就可以了,最終版本:1.12.4(2016年5月20日)
  • 2.x:不相容IE678,很少有人使用,官方只做BUG維護,功能不再新增。如果不考慮相容低版本的瀏覽器使用2.x,最終版本:2.2.4(2016年5月20日)
  • 3.x:不相容IE678,只支持最新的瀏覽器。需要註意的是很多老的jQuery插件不支持3.x版。目前該版本是官方主要更新維護的版本。

五、JQuery對象

JQuery對象就是通過JQuery包裝DOM對象產生的對象。jQuery對象是jQuery獨有的。如果一個對象是jQuery對象,那麼它就可以使用jQuery里的方法:例如$("#i1").html()。

$("#i1").html()的意思是:獲取id值為i1的元素的html代碼。其中html()是jQuery里的方法。

相關於:document.getElementById("i1").innerHTML;

雖然JQuery對象是包裝DOM對象後產生的,但是JQuery對象無法使用DOM對象的任何方法,同理DOM對象也沒有不能使用JQuery里的方法。

六、jQuery基礎語法

jQuery語法

通過jQuery,您可以選取(查詢,query)HTML元素,並對它們執行“操作”(actions)。

JQuery語法

jQuery語法是通過選取HTML元素,並對選取的元素執行某些操作。

基礎語法:$(selector).action()

  • 沒有符號定義jQuery
  • 選擇符(selector)“查詢”和“查找”HTML元素
  • jQuery的action()執行對元素的操作

示例:

$(this).hide()-隱藏當前元素
$("p").hide()-隱藏所有段落
$("p.test").hide()-隱藏所有class = "test"的段落
$("#test").hide()-隱藏所有id="test"的元素

七、jQuery選擇器

參考文檔:https://www.w3cschool.cn/jquery/xs75ofnl.html

jQuery選擇器

jQuery選擇器允許您對HTML元素組或單個進行操作。
jQuery選擇器基於元素的id、類、類型、屬性、屬性值等"查找"(或選擇)HTML元素。它基於以及存在的CSS選擇器,它還有一些自定義的選擇器。
jQuery中所有選擇器都以美元符號開頭:$()。

id選擇器

jQuery #id選擇器通過HTML元素的id屬性的id屬性選取指定的元素。

頁面中的元素的id應該是唯一的,所以您要在頁面中選取唯一的元素需要通過#id選擇器。

通過id選取元素語法如下:

$("#id")

示例:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>id選擇器</title>
    <script src="jquery-3.3.1.min.js"></script>
</head>
<body>

<h2>這是一個標題</h2>
<p>這是一個段落</p>
<p id="test">這是另一個段落</p>

</body>
</html>
HTML示例代碼

執行結果:

標簽選擇器

jQuery標簽選擇器基於標簽名選取元素。

在頁面中選取所有的<p>標簽

$("p")

示例:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>標簽選擇器</title>
    <script src="jquery-3.3.1.min.js"></script>
</head>
<body>

<h2>這是一個標題</h2>
<p>標簽選擇器,這是一個段落</p>
<p>標簽選擇器,這是另一個段落</p>

</body>
</html>
HTML示例代碼

執行結果

class類選擇器

jQuery類選擇器可以通過指定的class查找元素。

語法如下:

$(".test")

示例:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>class類選擇器</title>
    <script src="jquery-3.3.1.min.js"></script>
</head>
<body>

<h1 class="test">這是一個標題</h1>
<p class="test">這是一個段落</p>
<p>這是另外一個段落。</p>
</body>
</html>
HTML示例代碼

運行結果:

 

CSS選擇器

jQuery CSS選擇器可用於改變HTML元素的CSS屬性。

示例一:把所有的p標簽的背景顏色改為紅色

$("p").css("background-color","red");

示例二:選取所有元素(標簽)

$("*")

示例三:選取當前HTML元素

$("this")

示例四:選取第一個<p>元素

$("p:first")

示例五:選取class為intro的<p>元素

$("p.intro")

示例六:選取第一個<ul>元素的第一個<li>元素

$("ul li:first")

示例七:選取每個<ul>元素的第一個<li>元素

$("ul li:first-child")

示例八:選取帶有href屬性的元素

$("[href]")

示例九:選取所有target屬性值等於"_blank"的<a>元素

$("a[target='_blank']")

示例十:選取所有target屬性值不等於"_blank"的<a>元素

$("a[target!='_blank']")

示例十一:選取所有type="button"的<input>元素和<button>元素

$(":button")

示例十二:選取偶數位置的<tr>元素

$("tr:even")

示例十三:選取奇數位置的<tr>元素

$("trod")
<div class="c1">
    <a href=""></a>
    <p class="c2"></p>
    <p class="c3"></p>
    <div class="c4"></div>
    <p class="c5"></p>
</div>
<div class="c6">
    <a href=""></a>
    <a href=""></a>
</div>

#查找滿足條件的第一個
$('div>p:first');
#找出div標簽子集中的第一個p標簽,
#jQuery.fn.init [p.c2, prevObject: jQuery.fn.init(1)]

#查找滿足條件的最後一個
$('div>p:last');
#找出div標簽子集中最後一個p標簽
#jQuery.fn.init [p.c5, prevObject: jQuery.fn.init(1)]

#查找索引號為指定數字的元素
$('div>p:eq(2)');
#找出div標簽子集中的第三個p標簽
#jQuery.fn.init [p.c5, prevObject: jQuery.fn.init(1)]

#匹配所有索引值為偶數的元素,從 0 開始計數
$('div>p:even');
#找出div標簽子集中的索引為偶數的p標簽,取出class=c2,class=c5的p標簽。
#jQuery.fn.init(2) [p.c2, p.c5, prevObject: jQuery.fn.init(1)]

#匹配所有索引值為奇數的元素,從 0 開始計數
$('div>p:odd');
#找出div標簽子集中的索引為奇數的p標簽,取出class=c3的p標簽。
#jQuery.fn.init [p.c3, prevObject: jQuery.fn.init(1)]

#匹配所有大於給定索引值的元素
$('div>p:gt(1)');
#jQuery.fn.init [p.c5, prevObject: jQuery.fn.init(1)]

#匹配所有小於給定索引值的元素
$('div>p:lt(1)');
#jQuery.fn.init [p.c2, prevObject: jQuery.fn.init(1)]

#選取後代中包含一個或多個指定標簽的標簽
$('div:has(a)');
#jQuery.fn.init(2) [div.c1, div.c6, prevObject: jQuery.fn.init(1)]
更多示例一
#找出所有滿足not條件的標簽
<label>籃球
    <input type="checkbox" checked name="hobby" id="i1">
</label>
<label >足球
    <input type="checkbox" name="hobby" id="i2">
</label>
$('label>input:not(:checked)');
#選出沒有checked屬性的input標簽
#w.fn.init [input#i2, prevObject: w.fn.init(1)]

#示例代碼
<p class="c1"></p>
<p class="c1"></p>
<p id="d1"></p>
<ul>
    <li id="d2"></li>
    <li id="d3">
        <a href=""></a>
    </li>
</ul>

#找到所有後代中不含a標簽的li標簽
$("li:not(:has(a))")
#Query.fn.init [li#d2, prevObject: jQuery.fn.init(1)]

#找到不含class=c1的p標簽
$('p:not(.c1)');
#jQuery.fn.init [p#d1, prevObject: jQuery.fn.init(1)]
更多示例二

交集選擇器,選擇兩個條件同時成立的標簽

$("div.c1")        #選擇class=c1的div標簽

並集選擇器,選擇滿足以下條件中任意一個的所有標簽

$("#d,.c1,p")      #選擇id=d的標簽,具有class=c1的標簽,標簽是p的標簽。

層級選擇器

#後代選擇器
$("a b");        #處於a標簽級別下的所有b標簽,用空格分開。

#子類選擇器
$("a.b");        #處於a標簽級別下一級別的所有b標簽。


#毗鄰單一弟弟選擇器
$("a+b");       #與a標簽同一級別的緊挨著a標簽的b標簽。

#毗鄰多個弟弟選擇器
$("a~b");      #與a標簽同一級別的位於a標簽之後的所有b標簽。

屬性選擇器

#示例代碼
<p class="c1"></p>
<p class="c1"></p>
<p id="d1"></p>

#選取帶有該屬性的指定標簽
$('p[class]');
#jQuery.fn.init(2) [p.c1, p.c1, prevObject: jQuery.fn.init(1)]


#選取該屬性值等於指定值的標簽
$('p[id="d1"]');
#Query.fn.init [p#d1, prevObject: jQuery.fn.init(1)]

##選取該屬性值不等於指定值的標簽
$('p[class!="c1"]');
#jQuery.fn.init(2) [p#d1, p.c2, prevObject: jQuery.fn.init(1)]

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 什麼是假鏈接? 就是點擊之後不會跳轉的鏈接我們稱之為假鏈接。 假鏈接存在的意義? 在企業開發前期,其他界面都沒有寫出來,那麼,我們就不知道應該跳轉到什麼地方,所以就只能使用假鏈接來代替,當項目後期其其它界面都已經完成時再將假鏈接替換回真鏈接。 假鏈接格式? 兩者之間的區別: #的假鏈接會自動回到網頁 ...
  • 1.要想通過a標簽跳轉到指定的位置,那麼必須告訴a標簽一個獨一無二的身份證號碼,這樣a標簽才能在當前界面中找到需要跳轉的目標位置。 2.如何給HTML中的標簽綁定一個獨一無二的身份證號碼呢? 在HTML中,每一個標簽都有一個名稱叫做id的屬性,這個屬性就是用來給標簽指定一個獨一無二的身份證號碼的。 ...
  • css代碼添加背景圖片常用代碼 ...
  • ............ 作為一個非科班出生的外行人員,一直覺得程式員是一個高大上,充滿了神秘感的職業。但是在今天,一個不算新手的新手,再來看程式員這個職業。 對於我個人而言,以往的工作,就是孰能生巧的過程,沒有挑戰,渾渾噩噩的度過很長的一段時間。但是在轉行之後,想起以前的光陰,就是一陣肉痛啊。 時 ...
  • 1.Flexbox佈局: 2.Bootstrap柵格佈局 一共12格,分成3塊,每塊占4列。居中的內容寫在中間的那一塊。 3.聖杯/雙飛翼(水平自適應居中的基礎上) 第一步:居中的div寫在最前面, 撐滿一整行。三個div都向左浮動 第二步:讓三個div顯示在同一行 第三步:讓中間的div能夠自適應 ...
  • 先描述一下,這個問題,是如何遇到的 在ajax調用遠程服務的時候,報了一個Origin xxxxxx is not allowed by Access-Control-Allow-Origin 的錯誤, 大概的意思就是說,沒有許可權,解決方法據說要在服務端的response裡面設置一個許可權(網上有例子 ...
  • 如何通過自定義的deepclone,實現對對象,數組的深拷貝。 ...
  • 搭建第一個htttp伺服器 1.核心代碼 訪問路徑查看結果: 2.知識要點 require: 用於載入核心模塊,fs,http等 server: 提供Web服務(發送請求,處理請求,處理數據,發送響應) request: 請求對象,發送請求的客戶端的對象,可以獲取客戶端的請求信息 response: ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...