stackoverflow上的第一篇文章。希望一切都好!
我正在考虑通过JavaScript将ID值附加到HTML元素本身,而不是使用HTML id
属性。
例如,假设JavaScript变量htmlElement
是div。所以htmlElement.cssName
会告诉我们它的CSS类。
现在,怎么做
htmlElement.idProperty = "someValue"
在JavaScript中而不是<div id="someValue">
?然后我可以在事件处理程序中使用idProperty
。
this.idProperty
那很简单!
这样做有什么问题吗?
编辑:谢谢你的答案!非常有帮助和有益。我希望我能检查所有这些绿色!答案 0 :(得分:2)
没有,你可以按自己喜欢的方式去做,如果你动态创建这个项目你应该使用这个方法,如果你在html中这样做我建议你只需要输入名字也是html中的id。
然而,一个小小的说明。使用element.id而不是idProperty。element.id = 'my-id';
答案 1 :(得分:1)
您可以使用createAttribute
方法向元素添加id
,如下所示:
id = document.createAttribute('id');
id.value = "someValue";
htmlElement.setAttributeNode(id);
答案 2 :(得分:0)
您正在做的是向idProperty
对象实例添加运行时属性(在您的情况下,称为HTMLElement
)。您可以在JavaScript代码中执行此操作(Prototype库始终执行此操作)。让我感到不舒服,但它确实适用于所有主流浏览器。
如果您希望能够在HTML标记中指定这些,那么我会使用属性。您可以使用您想要的任何名称创建属性,但要小心我会使用data-xyz
之类的名称(例如,使用data-
前缀),因为这是使用您自己的属性的HTML5标准方式。然后使用getAttribute
获取值,setAttribute
设置/更新值。