我需要JavaScript代码来遍历HTML元素中的填充属性。

这个Element.attributes ref表示我可以通过索引访问它,但是没有指定它是否受良好支持并且可以使用(跨浏览器)。

还是其他方式? (不使用任何框架,例如jQuery/Prototype)

最佳答案

这将在IE,Firefox和Chrome中运行(有人可以测试其他人吗?—谢谢@Bryan):

for (var i = 0; i < elem.attributes.length; i++) {
    var attrib = elem.attributes[i];
    console.log(attrib.name + " = " + attrib.value);
}

编辑:IE迭代有问题的DOM对象支持的所有属性,无论它们是否实际上是用HTML定义的。

您必须查看attrib.specified bool 属性,以了解该属性是否实际存在。 Firefox和Chrome似乎也支持此属性:
for (var i = 0; i < elem.attributes.length; i++) {
    var attrib = elem.attributes[i];
    if (attrib.specified) {
        console.log(attrib.name + " = " + attrib.value);
    }
}

10-04 17:16