我经常最终将数据存储在DOM元素中,并大量使用自定义数据属性和JQuery。我知道HTML5规范说数据属性应该有data-
前缀,但据我所知,无论我想要什么,命名我的属性都没有什么坏处。如果我不使用“数据 - ”作为前导数据属性,会发生什么?
问题?
我经常最终将数据存储在DOM元素中,并大量使用自定义数据属性和JQuery。我知道HTML5规范说数据属性应该有data-
前缀,但据我所知,无论我想要什么,命名我的属性都没有什么坏处。如果我不使用“数据 - ”作为前导数据属性,会发生什么?
问题?
唯一的问题是验证。非标准元素属性不是有效的HTML5。因此,其中没有伤害,但在任何规范之外运行的危险是它可能不会在将来或由特定的用户代理支持。此外,您还有可能在未来将规范包含您的非标准属性,但这将意味着完全超出您的预期。更糟糕的情况是,当规范的新特性实现时,你必须更新页面。
在元素属性的情况下,它应该在所有浏览器中工作。
查看http://msdn.microsoft.com/en-us/library/ms536429%28VS.85%29.aspx了解有关此主题的信息,因为它与Internet Explorer有关。
如果你确定无效的HTML,那么没有问题。人们多年来一直在这样做,所以任何浏览器都不可能打破你期望的行为。
很好的思想和很好。谢谢。我认为我可以忍受风险,HTML标准不会以极快的速度移动。 – RSG