可能重复:
Opinion: in HTML, Possible Duplicate IDs or Non-Standard Attributes?
我目前正在编写一个使用jQuery clone来克隆带有id的元素的工具。这个克隆元素可能有孩子也可能有id。截至目前,我并没有使任何克隆元素ID独特。我很好奇,如果这可能导致任何与浏览器相关的问题,除了明显无法使用Id选择器找到单个元素。特别是我很好奇,如果旧的浏览器可能有重复的ID问题。
要明确我没有看到任何问题,但我只能将原生IE8测试为最早的浏览器。
我的假设是它可能会导致一些轻微的显示问题,因为它是无效的HTML,就是这样。
对于带有ID的元素使用克隆是否有任何影响,并且除了无效的HTML之外没有使它们的ID唯一?
答案 0 :(得分:1)
您可能根本不需要该元素的ID - 否则您将分别更改它们。
所以我建议删除id
属性:
$e.removeAttr('id')
并删除所有后代的id
:
$e.find('*').removeAttr('id')
答案 1 :(得分:1)
HTML将无效是,但99%的时间实际上不会导致任何渲染问题。
如果您使用getElementById
,则您的javascript会出现问题。您只能获得第一次出现的元素。 See here
答案 2 :(得分:0)
是的,未来的jQuery / javascript选择器会对这些元素行为不端。