向HTML元素添加元数据的最佳方法

我正在尝试整合一种在HTML中标记各种组件的方法,这些组件由jQuery脚本解析并在页面加载时创建。

例如,目前我可以将以下内容放入我的页面..

This is a button 

当jQuery脚本找到它时,它会注入创建一个带有图标的按钮所需的html以及所有必要的事件等。

然而,这很麻烦,需要很多长类名。 我宁愿做这样的事……

  

它不是那么短,但在我看来更整洁,需要更少的解析。 麻烦的是,我已经对“expandos”进行了一些研究,我相当肯定有些浏览器会不喜欢它并且它不会validation。

有人有更好的建议吗?

继续使用属性,但在其上使用data-前缀。 从HTML5开始,所有元素都明确允许带有前缀data-属性。 例:

  

它现在适用于所有浏览器(尽管W3validation器可能会抱怨它的HTML5支持还没有为黄金时段做好准备),并且因为它现在已经指定了行为,所以它具有前瞻性。

使用jquery的“.data”属性。 这非常方便,很多人都不知道。

有关更多信息,请参阅此链接 。

看看jQuery .data()函数。

人们也可以使用类来做这类事情。

  

您必须预先定义许多类,但与处理您必须创建的每个键值对没有太大的不同。

Prototype库支持:

element.store("key","value")

element.retrieve("key","value")

简单。 尼斯。 有效。

将xhtml与来自另一个DTD的自定义元素一起使用。 或者使用带有自定义data-属性的 html5