2012-10-26 65 views
1

我想保存對dom樹的某些元素的當前dom元素的屬性反映的特定對象的引用。每個元素可以具有對另一個對象的不同引用,或者它們可以引用相同的元素。是否有可能使用HTML5的數據屬性,或者有另一種方式來做到這一點在普通的JavaScript(而不是jQuery)。如何存儲對dom元素數據屬性上的對象的引用?

感謝您的幫助!

回答

2

如果您只是要存儲靜態屬性,那麼你可以使用每個DOM元素setAttribute方法,像這樣

//Assume x is a dom node 
x.setAttribute('data-myproperty' , JSON.stringify(your property object) ) 

但是,如果你正在尋找的東西,是不是JSON可編碼(或者說不能用字符串表示),那麼你就必須考慮其他方法。

jQuery數據方法實際上並沒有在dom元素上存儲任何東西。它維護一個內部緩存,其中包含傳遞給它的所有數據。

+0

我需要有一個真正的參考對象,因爲當多個元素引用同一個對象,並更改其中一方的財產,他們必須反映相同的數據,另一個觸發事件。 –

+1

然後你將不得不維護一個單獨的緩存,它可以像鍵值對一樣簡單(dom元素的id:你想存儲的對象) –

相關問題