我有动态内容,可以通过侧窗格上的索引访问,当用户选择侧窗格元素时,我使用id作为一种机制来判断他们引用的是什么数据,这样我就可以为主窗格动态生成适当的数据。
我只是使用了一个附加了数字的预先格式化的id,其中数字是数组中的索引,这样就为html标签创建了唯一的id。但是在某些情况下,我会与数字发生冲突,所以我一直在想使用UUID将是解决我的问题的一种方法。
但是,我不知道使用UUID作为html标记ID是否有任何问题。
根据我对有效字符和长度限制的了解,我相信立即和快速的答案是它应该工作。版本4使用字符0-9,a-z和- which,afaict作为HTML标记id的有效字符。而且长度似乎也不是问题。
我主要关心的是浏览器是否存在限制id有效大小的问题?运行一个测试并创建一个值为2d1b8447-e37a-43d8-9f7c-075eac7d9bcc
的单个id,甚至创建一个包含多个id的测试都可以。但我无法测试所有将使用该应用的浏览器,而且很难随时间推移测试性能。我的内容是非常动态的,带有这些id的标签可以随时间推移而删除和添加
我试着搜索报告的问题与大标签id和发现什么,但没有问题通过谷歌是不是没有任何问题的证据。
那么......有没有人在html标签上使用UIID的id,如果有,有没有什么问题我需要避免你遇到的?
我应该注意到,有证据表明UUID在indexing (InnoDB)中存在性能问题,我担心的是DOM操作和使用带有UUID ID的jQuery可能会遇到类似的问题。
干杯干杯干杯
3条答案
按热度按时间bq8i3lrv1#
可以使用
data-
属性完成同样的事情。示例:
使用jQuery读取
data-
属性:xv8emn3q2#
我使用UUID作为元素ID,CSS选择器会失败,因为ID必须以字母而不是数字开头,以便能够对它们执行基于CSS ID选择器的有效查询。
enyaitl33#
你可以在默认情况下使用它,比如-在一个组件中,你忘记传递一个ID,而你需要提供给一个html元素以实现可访问性。如果你试图在其他情况下使用它,记住uuid在每次运行中都是不同的,所以你不能在css或测试用例中使用这个ID值作为一个固定值。