在寫js的時候經常用到JQ對象和DOM對象互相轉換的過程,以下對二者之間的轉換做了總結記錄下來。
DOM對象?
DOM—Document Object Model,它是W3C國際組織的一套Web標準。它定義了訪問HTML文檔對象的一套屬性、方法和事件。
所以DOM對象也就是我們通過js直接獲取的HTML節點。
element.getElementById('id');
element.getElementsByTagName('tag');
element.getElementsByClassName('class');
JQ對象?
jQuery對象就是通過jQuery包裝DOM對象後產生的對象,它是jQuery獨有的。如果一個對象是jQuery對象,那麼就可以使用jQuery裏的方法。在jQuery對象中無法使用DOM對象的任何方法。
$("#id");
$(".class");
$("tagName");
兩者互相轉換
jq對象轉換成DOM對象:[index]和.get(index);
$("#navigation") instanceof jQuery //true
$("#navigation")[0] instanceof jQuery //false DOM對象
$("#navigation").get[0] instanceof jQuery//false DOM對象
DOM對象轉換成jQ對象
對於已經是一個DOM對象,只需要用$()把DOM對象包裝起來,就可以獲得一個jQuery對象了。$(DOM對象)
document.getElementById('navigation') instanceof jQuery//false
$(document.getElementById('navigation')) instanceof jQuery//true JQ對象