是否適當創建HTML元素使自定義屬性:
<input type='text' value='name' custom_attribute='value'>
這似乎有點黑客,我不確定它是否得到很大程度的支持,或者確切地說它是如何獲得的通過DOM編輯。
是否適當創建HTML元素使自定義屬性:
<input type='text' value='name' custom_attribute='value'>
這似乎有點黑客,我不確定它是否得到很大程度的支持,或者確切地說它是如何獲得的通過DOM編輯。
這就是DIRRRRRRTY!
它會工作,但有很多更好和不同的方式可以實現同樣的目標。
你可以在它旁邊創建一個隱藏的輸入來保存所需的值。
它不遵循strict
指導,但你可以做到這一點。 Dojo圖書館在整個地方都使用這種技術。
好問題。我認爲這是一個小黑客。這取決於它的使用方式。在許多情況下,隱藏的字段將起作用。
在我看到自定義屬性的所有情況下,系統的內部已經放入html中。
...像隱藏的輸入;) – redsquare 2010-07-07 23:00:04
這個答案可能有點主觀,但我會分享我的經驗。我曾經使用過的每個瀏覽器都會忽略任何不屬於HTML規範的額外屬性 - 即使IE的早期版本也能正確執行此操作。我發現它是一種方便的DOM操作技術,並且最近作爲jQuery選擇器的助手。但是,它有一些缺點,應該謹慎使用。如果您使用XHTML,其中一個缺點就是。在這種情況下,你不能只編寫自己的東西 - 你必須有一個定義屬性的DTD或XSD,然後將該模式定義作爲XML名稱空間引用。
就像另一個建議......如果你感覺有點虛僞你自己的屬性,也許你可能會考慮使用ID屬性爲你的HTML元素分配一個唯一的ID,如果不是每個標籤。然後,您可以使用JavaScript字典將您的元素ID與您嘗試嵌入的變量相關聯。你使用這個的唯一原因是JavaScript,對吧?我無法想象這種技術會有用的其他原因。
另一種替代方法是使用隱藏標籤作爲另一張海報建議,然後使用jQuery的.next()
選擇器http://api.jquery.com/next/。
如果屬性不在規範中,您的代碼將無效。我建議尋找存儲元素使用jquery的數據存儲的數據:http://ejohn.org/apps/workshop/adv-talk/#8
重複以下問題? http://stackoverflow.com/questions/992115/custom-attributes-yay-or-nay 它討論了自定義屬性的優點,包括HTML5數據屬性。 – 2010-07-07 23:17:48