2010-07-07 70 views
0

可能重複:
Custom attributes - Yay or nay?問題有關HTML元素和自定義屬性

是否適當創建HTML元素使自定義屬性:

<input type='text' value='name' custom_attribute='value'> 

這似乎有點黑客,我不確定它是否得到很大程度的支持,或者確切地說它是如何獲得的通過DOM編輯。

+1

重複以下問題? http://stackoverflow.com/questions/992115/custom-attributes-yay-or-nay 它討論了自定義屬性的優點,包括HTML5數據屬性。 – 2010-07-07 23:17:48

回答

2

退房HTML5數據atrributes。

Resig的先生解釋說more

的一個新功能HTML 5所介紹的是另外 的自定義屬性數據。這是一個看似 奇怪的除了規範 - 但實際上提供了一些有用的好處。

0

這就是DIRRRRRRTY!

它會工作,但有很多更好和不同的方式可以實現同樣的目標。

你可以在它旁邊創建一個隱藏的輸入來保存所需的值。

0

它不遵循strict指導,但你可以做到這一點。 Dojo圖書館在整個地方都使用這種技術。

0

好問題。我認爲這是一個小黑客。這取決於它的使用方式。在許多情況下,隱藏的字段將起作用。

在我看到自定義屬性的所有情況下,系統的內部已經放入html中。

+1

...像隱藏的輸入;) – redsquare 2010-07-07 23:00:04

0

這個答案可能有點主觀,但我會分享我的經驗。我曾經使用過的每個瀏覽器都會忽略任何不屬於HTML規範的額外屬性 - 即使IE的早期版本也能正確執行此操作。我發現它是一種方便的DOM操作技術,並且最近作爲jQuery選擇器的助手。但是,它有一些缺點,應該謹慎使用。如果您使用XHTML,其中一個缺點就是。在這種情況下,你不能只編寫自己的東西 - 你必須有一個定義屬性的DTD或XSD,然後將該模式定義作爲XML名稱空間引用。

就像另一個建議......如果你感覺有點虛僞你自己的屬性,也許你可能會考慮使用ID屬性爲你的HTML元素分配一個唯一的ID,如果不是每個標籤。然後,您可以使用JavaScript字典將您的元素ID與您嘗試嵌入的變量相關聯。你使用這個的唯一原因是JavaScript,對吧?我無法想象這種技術會有用的其他原因。

另一種替代方法是使用隱藏標籤作爲另一張海報建議,然後使用jQuery的.next()選擇器http://api.jquery.com/next/