jQuery是一個類數組對象,DOM對象就是一個單獨的DOM元素,他們都是可以操作的DOM元素。
一、jQuery對象轉化為DOM對象
有以下兩種方法:
方法一:利用數組下標的方式讀取jQuery中的DOM對象
HTML代碼:
1 <div>元素一</div> 2 <div>元素二</div> 3 <div>元素三</div>
javascript代碼:
1 var $div =$('div'); //jQuery對象 2 var div = $div[0]; //轉化為DOM對象 3 div.style.color = 'red' //操作DOM對象的屬性
jQuery對象是一個數組結構,可以通過數組下標索引找到對應的div元素,通過返回的div對象調用它的style屬性修改div元素的顏色。
方法二:通過jQuery自帶的get()方法
jQuery對象自身提供一個.get()方法允許我們直接訪問jQuery對象中相關的DOM節點,get方法中提供了一個元素的索引
1 var $div = $('div') //jQuery對象 2 var div = $div.get(0); //通過get方法,轉化為DOM對象 3 div.style.color = 'red'; //操作DOM對象的屬性
其實,jQuery源碼中,get()方法就是利用數組下標的方式處理的,只不過jQuery把它包裝程get方法更便於開發者使用。
二、DOM對象轉化為jQuery對象
相比較jQuery對象轉化為DOM對象,開發中更多的是把一個DOM對象加工成一個jQuery對象。$(參數)是一個對功能大方法,通過傳遞不同的參數而產生不同的作用,如果傳遞的參數是一個DOM對象,jQuery就可以把DOM對象包裝轉化為一個jQuery對象。
javascript代碼:
1 var div = document.getElementsByTagName('div'); //DOM對象 2 var $div = $(div); //jQuery對象 3 var $first = $div.first(); //找到第一個div元素 4 $first.css('color','red');
通過getElementSByTagName()獲取到所有的div節點的元素,結果是一個DOM合集對象,這個對象是一個數組合集,通過$(div)方法轉化為jQuery對象,再調用jQuery對象中的first和css方法查找對應的元素並改變其顏色。