首頁  >  文章  >  web前端  >  jquery和document取得html元素的差別是什麼?

jquery和document取得html元素的差別是什麼?

青灯夜游
青灯夜游轉載
2020-11-20 16:40:029805瀏覽

區別:jquery取得的html元素是jquery對象,可以執行jquery的方法,而document取得的是dom對象,執行的是dom的方法。 jQuery物件是jQuery獨有的,不能用DOM方法;而DOM物件也不能用jQuery方法。

jquery和document取得html元素的差別是什麼?

相關推薦:《jQuery教學

最近透過ocx做了一個影片插件,然後將插件放到html(想知道的可以看一下)

因為我要操作這個插件,要播放,停止等,所以我需要獲取這個元素,不出意外的,我就用jquery來獲取,然後根本無法執行,然後用document來獲取,正常執行,具體的如下所示

//正常执行     var obj = document.getElementById("player00");
obj.testhelloworld();//无法执行var playobj = $('#player00');
playobj.testhelloworld();

然後我就在想,這兩者有什麼區別呢? 接著搜尋如下結論

jquery取得的html元素是jquery對象,可以執行jquery的方法,而document取得的是dom對象,執行的是dom的方法

說明:

DOM物件是我們用傳統的方法(javascript)得到的對象,jQuery物件就是用jQuery的類別庫選擇器所獲得的對象。 JQuery物件就是透過jQuery包裝DOM物件後產生的物件。 JQuery物件是jQuery獨有的,其可以使用jQuery裡的方法,但是不能使用DOM的方法

頓時釋然,我此前一直認為兩個是等價的,並為追究為什麼dom的方法為什麼不能在jquery來執行,現在想想,完全釋然了。

既然這樣,那麼兩者之間要怎麼互相轉化呢? 畢竟所得到的對象的內容是一樣的。

jQuery物件轉換為DOM物件: 

兩種轉換方式將一個jQuery物件轉換成DOM物件:[index]和.get(index); 

(1)jQuery物件是一個資料對象,可以透過[index]的方法,來得到對應的DOM對象。

如:

var $v =$("#v") ; //jQuery对象 
var v=$v[0]; //DOM对象 
alert(v.checked) //检测这个checkbox是否被选中

(2)jQuery本身提供,透過.get(index)方法,得到對應的DOM物件 

如:

var $v=$("#v"); //jQuery对象 
var v=$v.get(0); //DOM对象 
alert(v.checked) //检测这个checkbox是否被选中

DOM物件轉換成jQuery物件: 

對於已經是DOM對象,只要用$()把DOM物件包裝起來,就可以獲得一個jQuery物件了。 $(DOM物件) 

如:

var v=document.getElementById("v"); //DOM对象 
var $v=$(v); //jQuery对象

轉換後,就可以任意使用jQuery的方法了。 

透過上述方法,可以任意的相互轉換jQuery物件和DOM物件。需要再強調注意的是:DOM物件才能使用DOM中的方法,jQuery物件是不可以用DOM中的方法。 

更多程式相關知識,請造訪:程式設計課程! !

以上是jquery和document取得html元素的差別是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:cnblogs.com。如有侵權,請聯絡admin@php.cn刪除