|
第一次學(xué)習(xí)jQuery,經(jīng)常分辨不清哪些是jQuery對(duì)象,哪些是DOM對(duì)象,因此需要重點(diǎn)了解jQuery對(duì)象和DOM對(duì)象以及它們之間的關(guān)系.
DOM對(duì)象,即是我們用傳統(tǒng)的方法(Javascript)獲得的對(duì)象,jQuery對(duì)象即是用jQuery類庫(kù)的選擇器獲得的對(duì)象;
復(fù)制代碼 代碼如下:
var domObj = document.getElementById("id"); //DOM對(duì)象
var $obj = $("#id"); //jQuery對(duì)象;
jQuery對(duì)象就是通過(guò)jQuery包裝DOM對(duì)象后產(chǎn)生的對(duì)象,它是jQuery獨(dú)有的。如果一個(gè)對(duì)象是jQuery對(duì)象,那么就可以使用jQuery里的方法,例:
$("#foo").html(); //獲取id為foo的元素內(nèi)的html代碼,html()是jQuery特有的方法;
上面的那段代碼等同于:
document.getElementById("foo").innerHTML;
注意:在jQuery對(duì)象中無(wú)法使用DOM對(duì)象的任何方法。
例如$("#id").innerHTML和$("#id").checked之類的寫(xiě)法都是錯(cuò)誤的,可以用$("#id").html()和$("#id").attr ("checked")之類的 jQuery方法來(lái)代替。同樣,DOM對(duì)象也不能使用jQuery方法。學(xué)習(xí)jQuery開(kāi)始就應(yīng)當(dāng)樹(shù)立正確的觀念,分清jQuery對(duì)象和DOM對(duì)象之間的區(qū)別,之后學(xué)習(xí) jQuery就會(huì)輕松很多的。
2.jQuery對(duì)象和DOM對(duì)象的互相轉(zhuǎn)換
在上面第一點(diǎn)說(shuō)了,jquery對(duì)象和dom對(duì)象是不一樣的!比如jquery對(duì)象不能使用dom的方法,dom對(duì)象不能使用jquery方法,那假如我jquery沒(méi)有封裝我要的方法,那能怎么辦呢?
這時(shí)我們可以將jquer對(duì)象轉(zhuǎn)換成dom對(duì)象
jquery對(duì)象轉(zhuǎn)換成dom對(duì)象
jquery提供了兩種方法將一個(gè)jquery對(duì)象轉(zhuǎn)換成一個(gè)dom對(duì)象,即[index]和get(index)。可能有人會(huì)覺(jué)得奇怪,怎么是用下標(biāo)呢,沒(méi)錯(cuò),jquery對(duì)象就是一個(gè)數(shù)組對(duì)象.
下面代碼將演示一個(gè)jquery對(duì)象轉(zhuǎn)換成dom對(duì)象,再使用dom對(duì)象的方法
復(fù)制代碼 代碼如下:
var $cr=$("#cr"); //jquery對(duì)象
var cr = $cr[0]; //dom對(duì)象 也可寫(xiě)成 var cr=$cr.get(0);
alert(cr.checked); //檢測(cè)這個(gè)checkbox是否給選中
dom對(duì)象轉(zhuǎn)換成jquery對(duì)象
對(duì)于一個(gè)dom對(duì)象,只需要用$()把dom對(duì)象包裝起來(lái),就可以獲得一個(gè)jquery對(duì)象了,方法為$(dom對(duì)象);
復(fù)制代碼 代碼如下:
var cr=document.getElementById("cr"); //dom對(duì)象
var $cr = $(cr); //轉(zhuǎn)換成jquery對(duì)象
轉(zhuǎn)換后可以任意使用jquery中的方法了.
通過(guò)以上的方法,可以任意的相互轉(zhuǎn)換jquery對(duì)象和dom對(duì)象.
最后再次強(qiáng)調(diào),dom對(duì)象才能使用dom中的方法,jquery對(duì)象不可以使用dom中的方法,但jquery對(duì)象提供了一套更加完善的工具用于操作dom,關(guān)于jquery的dom操作將在后面的文章進(jìn)行詳細(xì)講解.
ps:平時(shí)用到的jquery對(duì)象都是通過(guò)$()函數(shù)制造出來(lái)的,$()函數(shù)就是一個(gè)jquery對(duì)象的制造工廠.
建議:如果獲取的對(duì)象是jquery對(duì)象,那么在變量前面加上$,這樣方便容易識(shí)別出哪些是jquery對(duì)象,例如:
var $variable = jquery對(duì)象;
如果獲取的是dom對(duì)象,則定義如下:
var variable = dom對(duì)象
JavaScript技術(shù):jQuery對(duì)象和DOM對(duì)象使用說(shuō)明,轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。