我有动态内容,可通过侧 Pane 上的索引访问,当用户选择侧 Pane 元素时,我使用 id 作为一种机制来确定他们指的是什么数据,因此我可以动态生成主 Pane 的适当数据。
我只是使用了一个预格式化的 id 附加了一个数字,其中数字是数组中的索引,从而为 html 标签创建了唯一的 id。但是在某些情况下我会与数字发生冲突,所以我一直认为使用 UUID 是解决我问题的一种方法。
但是我不知道使用 UUID 作为 html 标签 ID 是否有任何问题。
根据我对有效字符和长度限制的了解,我相信直接而快速的答案是它应该有效。版本 4 使用字符 0-9, a-z and -其中,afaict 是 HTML 标签 ID 的有效字符。此外,长度似乎不是 issue .
我主要担心的是是否存在限制 ID 有效大小的浏览器问题?运行测试并创建值为 2d1b8447-e37a-43d8-9f7c-075eac7d9bcc
的单个 id,甚至创建具有多个的测试都很好。但我无法测试所有将使用该应用程序的浏览器,而且随着时间的推移很难测试性能。我的内容非常动态,可以随着时间的推移删除和添加具有这些 ID 的标签
我尝试搜索已报告的具有大标签 ID 的问题,但一无所获,但通过 Google 没有发现问题并不能证明没有任何问题。
那么...有没有人在 html 标签上使用 UIID 作为 id?如果有,我需要避免您遇到的任何问题吗?
我应该注意到,有证据表明 UUID 与 indexing (InnoDB) 存在性能问题。我担心的是 DOM 操作和将 jQuery 与 UUID 一起使用可能会遇到类似的问题。
干杯。
最佳答案
可以使用 data-
属性完成同样的事情。
例子:
<a href="#" data-UUID="2d1b8447-e37a-43d8-9f7c-075eac7d9bcc" class="product_link">Some product</a>
使用 jQuery 读取 data-
属性:
$('.product_link').click(function(){
var UUID=$(this).data('UUID');
/* do something with UUID*/
})
关于jquery - 我可以毫无问题地将 UUID 用作 HTML 标记 ID 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14420601/