【发布时间】:2017-09-16 04:23:07
【问题描述】:
这是一个测试用例:
HTML:
<div id="div1" x="="y">Test</div>
JS:
var div1 = document.getElementById('div1');
var attributes = [];
for (var i=0, len=div1.attributes.length; i < len; i++) {
attributes[div1.attributes[i].nodeName] = div1.attributes[i].value;
}
console.log(attributes);
https://codepen.io/anon/pen/LyGdxd
我知道属性在 HTML 中已经无效,但为什么浏览器仍然提示无效的nodeName。
【问题讨论】:
-
不管它是否是无效的 HTML,添加到元素的任何属性都将在 javascript 中可用,并且 javascript 不会真正即时验证 HTML。
标签: javascript attributes