jQuery學習筆記之入門
最近在學習jQuery,在網(wǎng)上看到有幾篇關(guān)于jQuery的文章,寫的不錯轉(zhuǎn)載過來跟大家分享一下;
一、JQuery是什么
JQuery是什么?始終是縈繞在我心中的一個問題:
借鑒網(wǎng)上同學們的總結(jié),可以從以下幾個方面觀察。
不使用JQuery時獲取DOM文本的操作如下:
document.getElementById('info').value = 'Hello World!';
使用JQuery時獲取DOM文本操作如下:
$('#info').val('Hello World!');
嗯,可以看出,使用JQuery的優(yōu)勢之一是可以使代碼更加簡練,使開發(fā)人員更加專注于邏輯本身。
二、JQuery能做什么
jQuery使用戶能更方便地處理HTML、events、實現(xiàn)動畫效果,并且方便地為網(wǎng)站提供AJAX交互。
jQuery庫包含以下功能:HTML元素選取、HTML元素操作、CSS操作、HTML事件函數(shù)、JavaScript特效和動畫、HTML|DOM遍歷和修改、AJAX、Utilities。
jQuery使用戶方便快捷獲取DOM元素、動態(tài)修改頁面樣式、動態(tài)改變DOM內(nèi)容、響應用戶的交互操作、為頁面添加動態(tài)效果、統(tǒng)一Ajax操作、簡化常見的JavaScript任務。
上述是對JQuery比較中肯的評價,節(jié)選其中的關(guān)鍵字可以粗略的觀察到:
方便的選取DOM元素,操作DOM元素。(HTML元素選取、HTML元素操作、獲取DOM元素、動態(tài)修改頁面樣式、動態(tài)改變DOM內(nèi)容)
響應用戶操作。(HTML事件函數(shù)、JavaScript特效和動畫、響應用戶的交互操作、為頁面添加動態(tài)效果)
簡化AJAX操作。(方便地為網(wǎng)站提供AJAX交互、統(tǒng)一Ajax操作)
即:方便DOM的選取和操作、響應用戶操作、簡化AJax操作。
三、DOM是什么
上述提到了DOM元素,不了解,查閱總結(jié)如下:
DOM 全稱是 Document Object Model,是文檔對象模型。
通過DOM元素,可以方便的操作HTML中的節(jié)點,比如獲取節(jié)點的內(nèi)容,添加某些元素,刪除某些元素。
也就是說,DOM元素和HTML息息相關(guān),它將HTML中的一個個標簽封裝成DOM元素,以便于JavaScript進行操作。
<html> <body> <div id="info"> <p>Test</p> </div> <script> window.onload = function(){ document.getElementById("info").innerHTML="success"; } </script> </body> </html>
其中document.getElementById("info")就是將id為info的標簽封裝成為一個DOM元素,接下來便可以方便的操作這個DOM對象,例如修改它的文本內(nèi)容等等。
四、JQuery與DOM之間的關(guān)系
JQuery對象與DOM對象之間有什么區(qū)別?
先了解什么是JQuery對象:
JQuery對象就是用JQuery包裝DOM之后產(chǎn)生的對象。JQuery對象是JQuery獨有的,可以使用JQuery的各種方法。
$("#test").html();
意思是指:獲取ID為test的元素內(nèi)的html代碼。其中html()是jQuery里的方法 。
這段代碼的作用等同于用DOM實現(xiàn)代碼:
document.getElementById("id").innerHTML;
雖然jQuery對象是包裝DOM對象后產(chǎn)生的,但是jQuery無法使用DOM對象的任何方法,同理DOM對象也不能使用jQuery里的方法。
還需要注意一點的是:
用#id作為選擇器獲取得的是jQuery對象,document.getElementById("id")得到的DOM對象,這兩者并不等價。
另外,JQuery對象與DOM對象之間可以互相轉(zhuǎn)換。
JQuery對象 -> DOM對象
兩種轉(zhuǎn)換方式將一個JQuery對象轉(zhuǎn)換成DOM對象:[index]和.get(index);
jQuery對象是一個數(shù)據(jù)對象,可以通過[index]的方法,來得到相應的DOM對象。
var v1 = $("#test") ; //jQuery對象 var v2 = $v1[0]; //DOM對象
通過.get(index)方法,得到相應的DOM對象。
var v1 = $("#test"); //jQuery對象 var v2 = v1.get(0); //DOM對象
DOM對象 -> JQuery對象
對于已經(jīng)是一個DOM對象,只需要用$()把DOM對象包裝起來,就可以獲得一個jQuery對象了。如$(document.getElementById("test"))
var v1=document.getElementById("test"); //DOM對象 var v2=$(v1); //jQuery對象
DOM對象轉(zhuǎn)換為JQuery對象之后就可以使用JQuery的方法了。
需要再次強調(diào)注意的是:DOM對象才能使用DOM中的方法,jQuery對象是不可以用DOM中的方法。
五、JQuery中的“$”有什么作用
這個問題解決之后,還有一個疑問:我們經(jīng)常在JQuery看見$('div')、$('#id')、$('.class')等類似的代碼。那么其中的"$"究竟有什么作用呢?
$其實就是jQuery的別稱。是jQuery提供的一個函數(shù),用來將DOM元素、選擇器包裝成jQuery對象。
var v1 = $('#id'); var v2 = jQuery('#id');
以上兩者是等同的。
所以"$"其實是一個符號,$()代替了jQuery(),當然你也可以使用其他的字符來代替"$"
var jq = jQuery.noConflict(); var v1 = jq('#id'); // 等同于var v1 = $('#id');
以上就是本文的全部內(nèi)容,希望本文的內(nèi)容對大家的學習或者工作能帶來一定的幫助,同時也希望多多支持腳本之家!
相關(guān)文章
Colortip基于jquery的信息提示框插件在IE6下面的顯示問題修正方法
今天看到了MK的這篇文章,然后其中的Colortip這個jQuery插件引起了我的注意,倒不是因為它新奇,而是我之前看到過,沒想到它就成了2010年最佳之一了2010-12-12jsonp跨域請求數(shù)據(jù)實現(xiàn)手機號碼查詢實例分析
這篇文章主要介紹了jsonp跨域請求數(shù)據(jù)實現(xiàn)手機號碼查詢的方法,結(jié)合實例形式較為詳細的分析了jsonp跨域請求數(shù)據(jù)的原理與查詢號碼的應用技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-12-12jQuery LigerUI 插件介紹及使用之ligerDrag和ligerResizable示例代碼打包
jQuery LigerUI 插件介紹及使用之ligerDrag和ligerResizable使用。2011-04-04Jquery 監(jiān)視按鍵,按下回車鍵觸發(fā)某方法的實現(xiàn)代碼
這篇文章主要介紹了jquery監(jiān)視按鍵,當按下回車鍵時觸發(fā)事件的一個例子,有需要的朋友可以參考下2014-05-05jquery.hotkeys監(jiān)聽鍵盤按下事件keydown插件
jquery.hotkeys就是網(wǎng)頁是監(jiān)聽用戶按鍵要用到的jquery庫,這里簡單介紹下使用方法,需要的朋友可以參考下2014-05-05jQuery實現(xiàn)checkbox全選、反選及刪除等操作的方法詳解
這篇文章主要介紹了jQuery實現(xiàn)checkbox全選、反選及刪除等操作的方法,結(jié)合實例形式形式詳細分析了jQuery針對checkbox多選按鈕常見批量操作相關(guān)實現(xiàn)技巧,需要的朋友可以參考下2019-08-08