当前位置:  开发笔记 > 编程语言 > 正文

如何遍历HTML元素中的所有属性?

如何解决《如何遍历HTML元素中的所有属性?》经验,为你挑选了2个好方法。

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

这个Element.attributes ref说我可以通过索引访问它,但是没有指定它是否得到很好的支持并且可以使用(跨浏览器).

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



1> Tomalak..:

这适用于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.specifiedBoolean属性以确定该属性是否实际存在.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);
    }
}


也适用于Opera和Safari.
@AndersonGreen如果你想一下它会来找你.

2> Lloyd..:

另一种方法是使用Array.from以下方法将属性集合转换为数组:

Array.from(element.attributes).forEach(attr => {
  console.log(`${attr.nodeName}=${attr.nodeValue}`);
})

推荐阅读
帆侮听我悄悄说星星
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有