jQuery對象與DOM對象的相互轉化

jQuery對象和DOM對象都是獲取到的頁面節點對象,爲何還須要相互轉化呢?

緣由是jQuery 對象中沒法使用 DOM 對象的任何方法,如 $("p").innerHtml 是錯誤的,由於它的寫法是 $("p").html()。一樣,DOM對象中也不能用 jQuery 對象中的方法,如 document.getElementsByTagName("p").html() 是錯誤的。html

一、jQuery 對象轉化爲 DOM 對象

jQuery對象若是想要用 DOM 對象中的方法,就須要轉化爲 DOM 對象。jQuery對象轉化爲 DOM 對象有兩種方式,代碼以下:數組

var $test = $("test");
var test = $test[0];   // jQuery對象是一個數組,能夠經過索引獲得 DOM 對象

或者:spa

// 用jQuery提供的get(index) 方法獲得 DOM 對象
var test = $test.get(0)'

二、DOM 對象轉化爲 jQuery 對象

同理,DOM 對象若是想要用 jQuery 對象中的方法,DOM 對象就須要轉化爲 jQuery 對象。DOM 對象轉化爲 jQuery 對象代碼以下:code

var test = document.getElementById("p");
var $test = $(test);  // 用jQuery 的工廠方法
相關文章
相關標籤/搜索