DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> jQuery入門知識 >> JQuery特效代碼 >> jquery對象和javascript對象即DOM對象相互轉換
jquery對象和javascript對象即DOM對象相互轉換
編輯:JQuery特效代碼     

jQuery 對象是通過 jQuery 包裝DOM 對象後產生的對象。jQuery 對象是 jQuery 獨有的,其可以使用 jQuery 裡的方法,但是不能使用 DOM 的方法;例如: $("#img").attr("src","test.jpg"); 這裡的 $("#img")就是 jQuery 對象。

DOM對象就是Javascript 固有的一些對象操作。DOM 對象能使用Javascript 固有的方法,但是不能使用 jQuery 裡的方法。例如:document.getElementById("img").src = “test.jpg";這裡的document.getElementById("img") 就是DOM 對象。

$("#img").attr("src","test.jpg"); 和 document.getElementById("img").src = "test.jpg"; 是等價的,是正確的,但是 $("#img").src = "test.jpg" ;或者 document.getElementById("img").attr("src","test.jpg"); 都是錯誤的。

再說一個例子,就是this, 在寫 jQuery 時經常這樣寫: this.attr("src","test.jpg");可是就是出錯,其實this 是DOM對象,而.attr("src","test.jpg") 是 jQuery 方法,所以出錯了。要解決這個問題就要將 DOM對象轉換成 jQuery 對象,例如 $(this).attr("src","test.jpg");

1. DOM 對象轉成 jQuery 對象

對於已經是一個 DOM 對象,只需要用 $() 把DOM對象包裝起來,就可以獲得一個 jQuery 對象了,$(DOM 對象) 注: var是定義變量

如: 

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

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

2. 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對象 ( $v.get()[0] 也可以 )
alert(v.checked); //檢測這個 checkbox 是否被選中

通過以上方法,可以任意的相互轉換 jQuery 對象和 DOM 對象,需要再強調的是: DOM 對象才能使用DOM 中的方法,jQuery 對象是不可以使用DOM中的方法。

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved