jQuery對象與js對象的區別以及index()/get()/eq()

我們首先要分清楚,用$()的方式,獲取的DOM對象是被封裝過的jq對象,可以使用jq提供的封裝過的方法。用js獲取的DOM對象就是jsDOM對象,不能使用jq封裝的方法。

想把jsDOM對象變成JqDOM對象,將jsDOM對象,放在$()中即可。

var div = document.getelementById("dv");//jsDOM對象
    div = $(div)//jqDOM對象

如果你瞭解jqDOM的原理,可以知道,jq對象其實是將jsDOM對象,存在了一個僞數組中=====jq對象

這個問題,我也就解釋道這吧,相信對於迷茫的你還是會有點幫助的。

jq對象實際上是一個類似數組的僞數組,jq就封裝了三個方法,用來獲取某一個對象。

index()方法,是爲了獲取當前jq對象在兄弟元素中的索引:無參數

var lis = $("ul li");
lis.click(function(){
    console.log($(this).index())//獲取當前元素在兄弟元素的中的索引
})

get()方法,從jq對象中,取出一個jsDOM對象:參數是索引-數字

var lis = $("li");//JQdom
var li = lis.get(0);//取出第一個js對象

eq()方法,是爲了從一個jq對象中,獲取其中一個jq對象:參數是索引值- 數字

var lis = $("li");//JQdom
var li = lis.eq(0);//取出第一個JQ對象(可以理解爲先把普通的jsDON取出來,再封裝成jqDOM)

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章