jquery中的$有啥作用
作用有:1、作為jQuery包裝器,利用選擇器來選擇DOM元素,語法「$("選擇器")」;2、函數前綴,作為通用實用工具函數的命名空間的前綴,例「$.trim(sString);」;3、解決window.onload函數的衝突;4、創建DOM元素,例「$("
這是個好故事>") 」;5、自訂方法以擴充jQuery;6、使用jQuery和其他函式庫;7、設定文件就緒處理程序。
本教學操作環境:windows7系統、jquery3.6版本、Dell G3電腦。
1、作為jQuery包裝器,利用選擇器來選擇DOM元素
在CSS中選擇器的作用是選擇頁面中某一類(類別選擇器)元素或某一個元素(ID選擇器)
#,而jQuery中的"$"作為選擇器,同樣是選擇某一類或某一類元素,只不過jQuery提供了
更多更全面的選擇方式。並且為使用者處理了瀏覽器的相容問題
(1)CSS可以透過如下程式碼來選擇標記下包含的所有子標記,然後新增對應的樣式風格
h2 a{ /添加CSS属性/ }
而在jquery中則可以透過以下程式碼來選取
標記下包含的所有子標記,作為一個物件數組,供javascript使用$("h2 a")
登入後複製(2) jquery中選擇器的通用語法如下:
$(selector)
登入後複製或
jQuery(selector)
登入後複製其中selector符合CSS3標準
(3)id選擇器,相當於javascript中的document.getElementById ("#showp“")
可以看到jQuery的表示方法簡潔很多
$("#showp“)
登入後複製(3)類別選擇器,選擇CSS類別作為”SomeClass“的所有節點元素, 在javascript中要實現相同的選擇,
需要用for循環遍歷整個DOM
$(".SomeClass")
登入後複製(4)選擇所有位於奇數行的
標記, 幾乎所有的標記都可以使用" : odd" 或": even" 來實現奇偶的選擇
$("p : odd")
登入後複製(5)所有表格行的第一個單元格,就是第一列。這在修改表格的某一列的屬性時是非常有用的。不再需要一行行遍歷表格
$("td:nth-child(1)")
登入後複製(6)子選擇器,返回
標記的所有子元素,不包括孫標記$("li > a")
登入後複製 (7)選擇所有超鏈接,並且這些超鏈接的href屬性是以"pdf"結尾的。有了屬性選擇器,可以很好的選擇頁面中的各種特性元素
# ("a[href=pdf]")
注意:
在jQuery中美元符號"$"其實就等同於"jQuery",從jQuery的原始碼中可以看出
為了編寫程式碼的方便,通常都會採用"$"來取代"jQuery"
2、函數前綴
在javascript中,開發者經常要便攜一些小函數來處理各種操作細節,例如在使用者提交表單時,
需要將文字方塊中的最前端和最末端的空格清理掉,javascript沒有提供類似trim()的功能,而引入
jQuery後,便可以直接使用trim()函數,例如
$.trim(sString);
登入後複製以上程式碼相當於:
jQuery.trim(sString);
登入後複製即trim()函數時jQuery物件的一個方法。
3、解決window.onload函數的衝突
#由於頁面的HMTL框架需要在頁面完全載入之後才能使用,因此在DOM程式設計時window.onload函數
頻繁被使用。倘若頁面中有多處都需要使用該函數,或者其他.js檔案中也包含window.onload函數,
衝突問題十分棘手
jQuery中的ready()方法很好的解決了上述問題,它能夠自動將其中的函數在頁面載入完成後運行,
並且在同一個頁面中可以使用多個ready()方法,而且不互相衝突。例如
$(document).ready(function(){
$("table.datalist tr:nth-child(odd)").addClass("altrow");
});
登入後複製對於上述程式碼jQuery也提供了簡寫,可以省略其中的"(document).ready"部分,程式碼如下:
$(function(){
$("table.datalist tr:nth-child(odd)").addClass("altrow");
});
登入後複製4、建立DOM元素
利用DOM方法建立元素節點,通常需要將document.createElement()、document.create TextNode()、
appendChild()搭配使用,十分麻煩,而jQuery中使用"$"符號可以直接建立DOM元素。例如
var oNewP = $("
這是個好故事>")
以上程式碼等同於javascript中的如下程式碼:
var oNewP = document.createElement("p");// 新建节点
var oText = document.createTextNode("这是一个好故事");
oNewP.appendChild(oText);
登入後複製另外,jQuery也提供了DOM元素的insertAfter()方法,偽程式碼如下:
$(function(){ // ready函数
var oNewP = $("<p>这是一个好故事</>");// 创建DOM元素
oNewP.insertAfter("#myTarget");// insertAfter()方法
});
<body>
<p id="myTarget">插入到这行文字之后</p>
<p>也就是插入到这行文字之前,但这行没有id,也可能不存在</p>
</body>
登入後複製5.擴充jQuery--自訂新增"$"
#jQuery無法滿足所有使用者的所有需求,且有一些特殊的需求十分小眾,也不適合放到整個jQuery框架中,
用户可以自定义该方法。代码如下:
$.fn.disable = function(){
return this.each(function(){
if(typeof this.disabled != "undefined") this.disabled = true;
});
}
登入後複製以上代码首先设置".fn.disable",表明为""添加一个方法“disable()”,其中“$.fn”是扩展jQuery时所必须的
然后利用匿名函数定义这个方法,即用each()将调用这个方法的每个元素的disabled属性均设置为true(如果该属性存在)
6、使用jQuery和其他库
例如:Prototype库也是使用$符号,jQuery提供noConflict函数避免冲突,jQuery.noConflict();把$符号还原到非jQuery库定义的含义。
7、文档就绪处理程序,相当于$(document).ready(...)
例如:
$(function(){...}); //里面的函数会在DOM树加载完之后执行
登入後複製扩展知识:解决"$"的冲突
如果其他框架也是用了“",会引起冲突,jQuery同样提供了noConflict()方法来解决""冲突问题
jQuery.noConflict();
登入後複製以上代码可以使""按照其他javascript框架的方式运算,这时再jQuery中便不能在使用“”,而必须使用jQuery,
例如$("p p") 必须写成jQuery("p p").
【推荐学习:jQuery视频教程、web前端视频】
以上是jquery中的$有啥作用的詳細內容。更多資訊請關注PHP中文網其他相關文章!
$("h2 a")
$(selector)
jQuery(selector)
$("#showp“)
$(".SomeClass")
$("p : odd")
$("td:nth-child(1)")
$("li > a")
(7)選擇所有超鏈接,並且這些超鏈接的href屬性是以"pdf"結尾的。有了屬性選擇器,可以很好的選擇頁面中的各種特性元素
# ("a[href=pdf]")
注意:
在jQuery中美元符號"$"其實就等同於"jQuery",從jQuery的原始碼中可以看出
為了編寫程式碼的方便,通常都會採用"$"來取代"jQuery"
2、函數前綴
在javascript中,開發者經常要便攜一些小函數來處理各種操作細節,例如在使用者提交表單時,
需要將文字方塊中的最前端和最末端的空格清理掉,javascript沒有提供類似trim()的功能,而引入
jQuery後,便可以直接使用trim()函數,例如
$.trim(sString);
以上程式碼相當於:
jQuery.trim(sString);
即trim()函數時jQuery物件的一個方法。
3、解決window.onload函數的衝突
#由於頁面的HMTL框架需要在頁面完全載入之後才能使用,因此在DOM程式設計時window.onload函數
頻繁被使用。倘若頁面中有多處都需要使用該函數,或者其他.js檔案中也包含window.onload函數,
衝突問題十分棘手
jQuery中的ready()方法很好的解決了上述問題,它能夠自動將其中的函數在頁面載入完成後運行,
並且在同一個頁面中可以使用多個ready()方法,而且不互相衝突。例如
$(document).ready(function(){ $("table.datalist tr:nth-child(odd)").addClass("altrow"); });
對於上述程式碼jQuery也提供了簡寫,可以省略其中的"(document).ready"部分,程式碼如下:
$(function(){ $("table.datalist tr:nth-child(odd)").addClass("altrow"); });
4、建立DOM元素
利用DOM方法建立元素節點,通常需要將document.createElement()、document.create TextNode()、
appendChild()搭配使用,十分麻煩,而jQuery中使用"$"符號可以直接建立DOM元素。例如
var oNewP = $("
這是個好故事>")
以上程式碼等同於javascript中的如下程式碼:
var oNewP = document.createElement("p");// 新建节点 var oText = document.createTextNode("这是一个好故事"); oNewP.appendChild(oText);
另外,jQuery也提供了DOM元素的insertAfter()方法,偽程式碼如下:
$(function(){ // ready函数 var oNewP = $("<p>这是一个好故事</>");// 创建DOM元素 oNewP.insertAfter("#myTarget");// insertAfter()方法 }); <body> <p id="myTarget">插入到这行文字之后</p> <p>也就是插入到这行文字之前,但这行没有id,也可能不存在</p> </body>
5.擴充jQuery--自訂新增"$"
#jQuery無法滿足所有使用者的所有需求,且有一些特殊的需求十分小眾,也不適合放到整個jQuery框架中,
用户可以自定义该方法。代码如下:
$.fn.disable = function(){ return this.each(function(){ if(typeof this.disabled != "undefined") this.disabled = true; }); }
以上代码首先设置".fn.disable",表明为""添加一个方法“disable()”,其中“$.fn”是扩展jQuery时所必须的
然后利用匿名函数定义这个方法,即用each()将调用这个方法的每个元素的disabled属性均设置为true(如果该属性存在)
6、使用jQuery和其他库
例如:Prototype库也是使用$符号,jQuery提供noConflict函数避免冲突,jQuery.noConflict();把$符号还原到非jQuery库定义的含义。
7、文档就绪处理程序,相当于$(document).ready(...)
例如:
$(function(){...}); //里面的函数会在DOM树加载完之后执行
扩展知识:解决"$"的冲突
如果其他框架也是用了“",会引起冲突,jQuery同样提供了noConflict()方法来解决""冲突问题
jQuery.noConflict();
以上代码可以使""按照其他javascript框架的方式运算,这时再jQuery中便不能在使用“”,而必须使用jQuery,
例如$("p p") 必须写成jQuery("p p").
【推荐学习:jQuery视频教程、web前端视频】
以上是jquery中的$有啥作用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

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

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

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

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

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

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

jQuery引用方法詳解:快速上手指南jQuery是一個受歡迎的JavaScript庫,被廣泛用於網站開發中,它簡化了JavaScript編程,並為開發者提供了豐富的功能和特性。本文將詳細介紹jQuery的引用方法,並提供具體的程式碼範例,幫助讀者快速上手。引入jQuery首先,我們需要在HTML檔案中引入jQuery函式庫。可以透過CDN連結的方式引入,也可以下載

jQuery中如何使用PUT請求方式?在jQuery中,發送PUT請求的方法與發送其他類型的請求類似,但需要注意一些細節和參數設定。 PUT請求通常用於更新資源,例如更新資料庫中的資料或更新伺服器上的檔案。以下是在jQuery中使用PUT請求方式的具體程式碼範例。首先,確保引入了jQuery庫文件,然後可以透過以下方式發送PUT請求:$.ajax({u

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

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

jQuery如何移除元素的height屬性?在前端開發中,經常會遇到需要操作元素的高度屬性的需求。有時候,我們可能需要動態改變元素的高度,而有時候又需要移除元素的高度屬性。本文將介紹如何使用jQuery來移除元素的高度屬性,並提供具體的程式碼範例。在使用jQuery操作高度屬性之前,我們首先需要了解CSS中的height屬性。 height屬性用於設定元素的高度

jQuery是一種流行的JavaScript庫,被廣泛用於處理網頁中的DOM操作和事件處理。在jQuery中,eq()方法是用來選擇指定索引位置的元素的方法,具體使用方法和應用場景如下。在jQuery中,eq()方法選擇指定索引位置的元素。索引位置從0開始計數,即第一個元素的索引是0,第二個元素的索引是1,依此類推。 eq()方法的語法如下:$("s

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

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