8

我已经回答了数百个 jQuery 问题。新手常见的错误之一是使用多个元素 ID,如下所示:

<div id="a">....</div>
<div id="a">....</div>

然后他们会做这样的事情并询问为什么它不能按预期工作:

$('#a').hide();

我通常会回复:

IDs must be unique

...有人总是回应:

但不是在 HTML5 中!

问题:如果 HTML5 中允许使用多个相同的 ID,脚本应该如何处理它们,或者我们仍然应该避免使用多个相同的元素 ID?

4

2 回答 2

12

仅引用HTML5

id 属性指定其元素的唯一标识符 (ID)。[DOMCORE]

该值在元素的所有 ID 中必须是唯一的,home subtree 并且必须包含至少一个字符。该值不得包含任何空格字符。

我想在一般意义上,ID可能是用词不当。但是,它应该在子树上下文中有效。

主子树是:

节点的主子树是以该节点的根元素为根的子树。当一个节点在一个文档中时,它的主子树就是那个文档的树

于 2013-04-02T21:15:02.083 回答
3

我投票避免使用多个相同的 ID。 Jquery 根据选择器返回一个元素数组,这将隐藏对这个约定的滥用

使用 ID 作为 jquery 选择器时,仅返回 1 个元素:Jquery Docs

我将继续保持我的 ID 独一无二。它只是使开发更容易。

于 2013-04-02T21:15:20.960 回答