【发布时间】:2017-11-30 07:22:57
【问题描述】:
我有这种情况:
//first situation:
<div id="div" data-attr="value">My div</div>
script:
var id = document.getElementById('div');
if(id.hasAttribute("data-attr")){...
//second situation:
//second situation:
<div id="div">My div</div>
script:
var id = document.getElementById('div');
id.setAttribute('data-attr','value');
if(id.hasAttribute("data-attr")){...
第二个例子不起作用:我想知道为什么?
编辑: setAttributeNode 只是一个错字,我用了 setAttribute
【问题讨论】:
-
你为什么不用
dataset? -
尝试改用
setAttribute- 考虑到代码会失败 -
@JaromandaX — ?!这有什么帮助?
-
@Quentin - 因为使用 setAttribute 是您设置属性的方式 - setAttributeNode 做了完全不同的事情,并且 OP 的代码应该会因错误而失败
-
很公平 - 但我的评论仍然有效,
.setAttributeNode在代码中被错误使用 - 一旦他修复了 gelElementById,这将是下一个失败点
标签: javascript html custom-data-attribute