2009-04-20 26 views

回答

4

我還沒有遇到一個列表,但如果存在它可能會很長。除了瀏覽器特定(專有)屬性之外,還有一些其他不太有用的屬性和方法目前沒有被jQuery抽象。但是,我並不認爲這是一個問題,甚至不是一個有效的討論點,因爲jQuery IS JavaScript;如果您需要訪問超出了jQuery的則提供了一些你可以使用get()或者你的「收藏的jQuery」的一個內訪問指定的元素像一個數組:

jQuery(elem)[0].someDOMProperty; 

加jQuery提供用於非絕對不支持DOM中的元素節點。如果出於任何原因需要直接訪問評論節點,文本節點等,那麼您需要使用「原始」DOM。

-1

我可能是錯的,但我認爲你可以通過attr方法訪問任何屬性。

+0

$ .attr()方法只訪問DOM中單個元素的屬性。我認爲他一般意味着DOM,而不僅僅是一個特定的標籤。 – 2009-04-21 00:09:43

+0

咦?我知道它訪問一個單一的元素。當您訪問元素時,屬性是特定於元素的。我不明白你在這裏想說什麼.. – Matt 2009-04-21 00:19:58

0

我不知道在jQuery中沒有提供的DOM操作/屬性的編譯列表(並且快速的谷歌搜索沒有改變任何東西),但是如果你去http://api.jquery.com/你可以看到整個API ,甚至可以下載它作爲Adobe AIR應用程序,以防您在需要時沒有互聯網。

0

每個元素的每個屬性都可以通過attr()函數訪問。如果您可以在該元素上執行document.getElementById(),然後訪問屬性,則還可以使用attr()函數執行此操作。但是,使用jQuery時,某些屬性可以通過其他方式更容易地訪問。例如,要查看是否有元素是隱藏還是可見,你可以這樣做:

var isVisible=$("#el").is(":visible"); 

而不是使用attr()方法。同樣,您可以通過比使用attr()方法更簡單的方式找到下拉菜單的selectedIndex和所選選項的文本。 This pdf概述了一些這些更簡單的方法。

要訪問CSS屬性,你最好這樣做:

var fontWeight=$("#el").css("fontWeight"); 

,而不是使用get()attr()。您還可以通過這種方式設置CSS屬性,例如:

$("#el").css("fontWeight","bold"); 
0

No. JQuery只是JavaScript。如果你可以用JavaScript來完成,你可以用jQuery來完成。一些屬性和方法在jQuery對象的上下文中被覆蓋,這就是你想要get()方法的地方 - 去'獲取'(即訪問)標準屬性/方法。

這真的很複雜。