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

2023-11-26

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

This 元素.属性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迭代all相关 DOM 对象支持的属性,无论它们是否实际上已在 HTML 中定义。

你必须看看attrib.specified布尔属性,用于查明该属性是否实际存在。 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);
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何遍历 HTML 元素中的所有属性? 的相关文章

  • 如何格式化 Highcharts 的 (x,y) 对数据的日期时间

    我的序列化方法会产生如下所示的日期时间字符串 2014 07 09T12 30 41Z 为什么下面的代码不起作用 function container highcharts xAxis type datetime series data x
  • 摩卡 - Chai Karma“套件未定义”

    我对 jscript tdd 很陌生 遇到了问题 希望有人能告诉我我在做什么 在浏览器中运行测试 通过 HTML 文件 一切正常 通过节点和业力运行它们我得到以下异常 我想在 node js 主机的 karma 中使用 Mocha 和 Ch
  • 如何针对 Node.js 中发生的每个错误发送电子邮件?

    假设我的 node js 应用程序正在运行 如果出现错误 我的意思是所有错误 不仅仅是网络错误 如果出现错误 则很重要 我如何调用函数向我发送电子邮件 基本上 在我希望它写入 err out 之前 我希望向我发送一封电子邮件 我正在使用no
  • 引导程序提前输入未填充承诺的响应

    我的引导程序预输入如下
  • Snap.svg - 停止在可悬停元素的子元素上重新触发悬停事件

    对于一个项目 我使用的 SVG 形状由背景多边形和背景多边形上方的一些文本 我已将其转换为路径 组成 我正在使用 Snap svg 为我的形状设置动画 当我将鼠标悬停在多边形上时 形状应该缩放到特定尺寸 包括其中的所有内容 鼠标移开时 形状
  • 在打字稿中导入 json

    我是 typescript 的新手 在我的项目中 我们使用 typescript2 在我的要求之一中 我需要导入 json 文件 所以我创建了 d ts 文件如下 test d ts declare module json const va
  • Chrome 扩展程序在代码中使用 client_secret

    我正在开发具有自己的 oAuth 授权的 Google Chrome 扩展 当然 我必须使用 client id 和 client secret 作为请求令牌 有什么办法可以向用户隐藏这些数据吗 由于此请求只是 javascript 源代码
  • 在 HTML5 画布中,如何用我选择的背景遮盖图像?

    我试图用画布来实现这一点 globalCompositeOperation 但没有运气 所以我在这里问 这里有类似的问题 但我没有在其中找到我的案例 我的画布区域中有图层 从下到上的绘制顺序 画布底座填充纯白色 fff 用fillRect
  • window.location 和 location.href 之间的区别

    我对之间的区别感到困惑window location and location href 两者似乎都以相同的方式行事 有什么不同 window location是一个对象 它保存有关当前文档位置的所有信息 主机 href 端口 协议等 lo
  • DataTables row.add 到特定索引

    我正在替换这样的行项目 var targetRow entity row dataTable targetRow closest table dataTable DataTable dataTable row targetRow remov
  • Vuejs 2:去抖动不适用于手表选项

    当我在 VueJs 中反跳此函数时 如果我提供毫秒数作为原语 它就可以正常工作 但是 如果我将其提供为对 prop 的引用 它会忽略它 这是道具的缩写版本 props debounce type Number default 500 这是不
  • 如何创建适合屏幕宽度的等宽/高框? [复制]

    这个问题在这里已经有答案了 我正在尝试建立一个网站 其中有很多宽度和高度相等的框 例如 我有一个页面 其中并排有两个相同大小的框 简单的解决方案是将宽度和高度设置为 50vw 这在出现滚动条之前效果很好 我已经用谷歌搜索了几个小时 但无法理
  • 代码镜像错误:未捕获错误:扩展集中无法识别扩展值([对象对象])

    全部 我目前正在从事一个React Electron项目 该项目的目标是完成一个Markdown编辑器 当我配置codemirror 该程序报告错误说 Uncaught Error Unrecognized extension value
  • 表格行未扩展到全宽

    我有一个表格 当我将表格的宽度设置为 100 并将表格行的宽度设置为 100 时 没有任何反应或宽度发生变化 Table Normal position relative display block margin 10px auto pad
  • 在 JavaScript 循环之外声明变量可以提高速度和内存?

    C 也有类似的问题 但我们没有看到 JavaScript 的任何问题 在循环内声明变量是否可以接受 假设循环有 200 次迭代 使用样本 2 相对于样本 1 是否有性能要求 内存和速度 我们使用 jQuery 来循环 它提高了我们将 var
  • 在 Javascript 中连接空数组

    我正在浏览一些代码 我想知道这有什么用处 grid push concat row 根据我的理解 它等同于 grid push row 为什么要大惊小怪 连接 你想使用 concat当您需要展平数组并且没有由其他数组组成的数组时 例如 va
  • 在 Shopify 商店中嵌入 Vue 组件

    在产品页面中 我尝试显示自定义 Vue 组件 为简洁起见 该组件根据给定的产品 ID 显示 Firebase 数据库中的一些信息 我最初尝试将其制作为 Shopify 应用程序 以便我可以访问他们的 API 我实现了 OAuth 并且可以检
  • Javascript Replace() 和 $1 问题

    我正在尝试创建一个脚本来搜索文本中的模式并在它找到的字符串周围包裹一个标签 shop attributes td each function this html function i html return html replace E 0
  • JavaScript 相对路径

    在第一个 html 文件中 我使用了一个变量类别链接 var categoryLinks Career prospects http localhost Landa DirectManagers 511 HelenaChechik Dim0
  • CSS溢出文本显示在几行中,没有断字

    我有一些长文本显示在 div 中 该 div 具有固定的宽度和高度 我希望文本显示在几行上 作为 div 高度 并且句子单词不会中断 一行中的单词前缀和下一行中的继续 此外 我想在末尾添加省略号最后一句话 CSS white space n

随机推荐

  • Python函数在二进制数组中查找1的索引

    我有一个看起来像这样的数组 1 0 1 0 0 1 我想得到那些有 1 的索引 所以在这里我会得到一个数组 0 2 5 然后基于它我会创建一个新的数组 它接受这些数字并用它们对 2 求幂 所以最后的数组是 2 0 2 2 2 5 有没有办法
  • 如何在 Python 中创建守护进程?

    在谷歌上搜索揭示 x2 代码片段 第一个结果是这段代码的配方其中有很多文档和解释 以及下面的一些有用的讨论 然而 另一个代码示例虽然不包含太多文档 但包含用于传递启动 停止和重新启动等命令的示例代码 它还创建一个 PID 文件 可以方便地检
  • 使用 php 设置 firebase v3 自定义身份验证

    我正在尝试按照以下指南使用 google 的新 firebase sdk 设置自定义身份验证 https firebase google com docs auth server use a jwt library在 samble 代码中它
  • i18n 错误:控制器和模板使用不同的隐式语言

    控制器 def test Action implicit request gt import play api i18n val msg Messages error invalid implicit val langInControlle
  • 是否可以在运行时动态加载 Svelte 模板?

    我查看了文档
  • 构建后给 app.config 另一个名称吗?

    众所周知 当您使用 app config 文件构建项目时 它会被复制到 bin 目录并重命名为 targetFileName config 是否可以将其称为其他名称 例如 如果我的可执行文件名为 myApplication exe 我可以使
  • 如何为 RecyclerView 创建上下文菜单

    如何实现上下文菜单RecyclerView 显然是在打电话registerForContextMenu recyclerView 不起作用 我从一个片段中调用它 有人成功实施过这个吗 感谢您的信息和评论 我能够实现ContextMenu对于
  • 编写 PHP 文件以从 CSV 读取并执行 SQL 查询

    我想要一个 PHP 脚本来读取以下格式的 CSV 文件中的内容 id sku 1 104101 2 105213 总共有 1486 个条目 我认为最好使用 for 循环而不是 while EOF 之后 我想对名为m118的数据库 表cata
  • 数据访问层的设计模式

    你可能会觉得这是家庭作业 为此我很抱歉 我已经搜索过但找不到正确的答案 所以我的问题是 我有几个类 每个类都有一个保存方法 所以我创建了一个单独的类来处理数据库 namespace HospitalMgt Data public stati
  • 如何使用 Hibernate 仅更新所有实体属性的一部分

    我收到一个包含 30 个字段的 JSON 我的实体是根据该 JSON 构建的 问题是 不应更新两个字段 两个日期 如果我使用entity merge 两个字段都会更新 如何避免这两个字段被更新 也许使用 criteria Example 有
  • 为什么short是2字节对齐的?

    这是 C 结构体的声明 struct align char c 1 byte short s 2 bytes 在我的环境中 sizeof structalign 为 4 填充 1 字节位于 char c 和 short s 之间 有人说这是
  • 在 F# 中编写符合 CLS 的代码

    我对 F 非常陌生 我开始在 OpenGL 之上编写我的函数包装器 我还打算用它来编写一个图形引擎 该引擎应该与所有 Net 语言具有互操作性 但很难找到有关 F 中哪些代码结构不符合 CLS 的信息 例如 我已经知道一些不符合 CLS 的
  • Spring Security、REST基本身份验证问题

    在使用 Spring 进行基本身份验证时 我遇到了与 HTTP 响应标头 Access Control Allow Origin 相关的问题 当我手动进行身份验证时 如下面的代码 我使用的是 REST RequestMapping valu
  • matplotlib 标准颜色图用法

    我正在使用 matplotlib 1 3 0 并且有以下内容 import matplotlib pyplot as plt cmap plt cm jet plt contourf 12 2 8 2 levels 0 1 3 5 1 3
  • 如何在 Service 构造函数中对 Controller 进行单元测试并模拟 @InjectModel

    我在对控制器进行单元测试时遇到问题 并收到错误 Nest 无法解析我的服务的依赖项 为了获得最大的覆盖范围 我想对控制器和相应的服务进行单元测试 并想模拟猫鼬连接等外部依赖项 同样 我已经尝试了以下链接中提到的建议 但没有找到任何运气 ht
  • Android Studio 更新后构建项目中的classes.jar 中存在重复类

    我最近将 Android Studio 更新到最新版本 因为我一直面临连接到它的库的问题 最新面临的问题如下 Cause 1 java util concurrent ExecutionException java lang Runtime
  • nginx conf /具有多个映射)到同一变量

    我们有一个多站点设置 需要将域和域 子文件夹映射到变量 这样编程就知道要加载哪个版本 我们的商店具有单独的域 并且可以通过以下方式捕获 http host还有domain com string locale here 并被捕获 http h
  • Python列表理解-想要避免重复评估

    我有一个列表理解 近似于 f x for x in l if f x 其中 l 是一个列表 f x 是一个返回列表的昂贵函数 我想避免对 f x 的每次非空出现对 f x 求值两次 有什么方法可以将其输出保存在列表理解中吗 我可以删除最终条
  • /usr/lib64/libstdc++.so.6:找不到版本“GLIBCXX_3.4.15”

    我正在尝试运行 appium 测试 但是我收到错误消息 usr lib64 libstdc so 6 version GLIBCXX 3 4 15 not found 我使用的是RedHat6 6 当我跑步时 strings usr lib
  • 如何遍历 HTML 元素中的所有属性?

    我需要 JavaScript 代码来迭代 HTML 元素中填充的属性 This 元素 属性ref 说我可以通过索引访问它 但没有指定它是否得到很好的支持并且可以使用 跨浏览器 或者还有其他方法吗 不使用任何框架 如 jQuery Proto