2011-09-14 103 views
2

我記得有一個jQuery方法爲dom元素提供了唯一的編號。它只適用於動畫DOM對象。現在我找不到這種方法。那是什麼方法?有沒有其他方式爲元素提供唯一編號?jQuery爲dom元素提供了唯一的編號?

+0

http://stackoverflow.com/questions/226689/unique-element-id-even-if-element-doesnt-have-one – Blazemonger

+0

可能這個其他堆棧溢出問題幫你? http://stackoverflow.com/questions/3298500/unique-identifier-for-html-elements –

+0

另請參閱:http://forum.jquery.com/topic/return-unique-id-with-jquery-data-elem – Blazemonger

回答

0

唯一看起來很像你可能會追求的是jQuery.unique(),但即使這樣也不符合你的建議。我鼓勵你更新你的問題來說明目的,因爲可能有更好的方法來解決問題,促使你獲得每個元素的唯一編號。

2

我想你可能會考慮jQuery.expando的概念。有一個名爲jQuery.expando的屬性存在於每個運行jQuery的頁面上。它是這樣定義的:

expando: "jQuery" + (jQuery.fn.jquery + Math.random()).replace(/\D/g, ""), 

因此對於我而言,在當前頁面上,它是jQuery15209244967177268291。任何具有存儲在其上的數據的元素(包括作爲數據存儲的事件處理程序)都具有該名稱的屬性。這包含一個唯一編號,它是全局數據緩存中該元素的關鍵。

例如,對於屏幕的左上方的全球StackExchange收件箱:

$('.genu')[0].jQuery15209244967177268291 === 29 

您可以$('.genu')[0][jQuery.expando]模仿這種;我不確定你是否會得到相同的號碼。 (編輯:這不是我的每次連相同的號碼。)然而

注意的是,並不是每一個元素都有一個唯一的編號,只有那些重視他們的數據。這可能會也可能不適合你的目的...

相關問題