區別 Jquery物件和Dom物件

靜逸發表於2015-05-24

在討論之前,先約定好定義變數的風格。

如果獲取的物件是jQuery物件,那麼在變數前加上$,例如:

var $variable = jQuery物件;

如果獲取的是DOM物件,則定義如下:

var variable = DOM物件;

 

jQuery物件不能使用DOM中的方法,但是如果對jQuery物件所提供的方法不熟悉,或者jQuery沒有封裝想要的方法,不得不實用DOM物件的時候,有以下兩種處理方法。jQuery提供了兩種方法將一個jQuery物件轉換成DOm物件,即[index]和get(index).

1、jQuery物件是一個陣列物件,可以通過[index]的方法得到相應的DOM物件。

var $cr = $("#cr"); //jQuery物件
var cr = $cr[0] //DOM物件
alert(cr.checked) //檢測這個checkbox是否選中了

2、通過get(index)方法得到相應的DOM物件。

var $cr = $("#cr");
var cr = $cr.get(0);
alert(cr.checked);

對於一個DOM物件,只需要用$()把DOM物件包裝起來,就可以獲得一個jQuery物件了,方式為$(DOM物件)。

var cr = document.getElementByID("cr"); //DOM物件
var $cr = $(cr);

 

在此總結說明:

jQuery方法裡的get方法事實上是獲得Dom元素($(this).get(0)與$(this)[0])

而jQuery方法裡的eq、first、last等方法都是返回的Jquery物件

DOM物件才能使用DOM中的方法,jQuery物件不可以使用DOM中的方法。jQuery物件提供了一套更加完善的工具用於操作DOM。

相關文章