javascript - HTMLCollection 返回 null
问题描述
我已经查看了其他 stackoverflow 帖子,但没有一个可以解决我的错误。
尝试使用类名“CodeMirror-code”获取外部 div 中的 div
我正在构建一个 chrome 扩展,它直接修改特定网页的 html 内容以及当我调用时
const variable = document.getElementsByClassName('CodeMirror-code');
console.log(variable);
console.log("Length:", variable.length);
输出是:这个
现在,当我尝试调用 HTML 集合的第一项时
variable.item(0)
这返回 undefined 或 null
其他解决方案说您应该将代码包围在 window.onload 函数中,以便加载 DOM 元素。我这样做了,没有任何变化。有什么办法可以解决这个错误吗?
更新: 这是 HTML 集合中的内容
解决方案
将您的代码包围在 window.onLoad 中的设置间隔函数中并添加一些延迟(例如 2000 持续 2 秒)。唯一让 HtML 集合为 null 的是 dom 元素的加载延迟。如果添加延迟仍然没有帮助,那么尝试追溯您的 div 的父母,看看您的 js 代码能够捕捉到预期的 div 直到什么时候。然后检查它是否与加载时间或代码范围有关。
推荐阅读
- c++ - 具有不同编译器标志的不同翻译单元中的内联函数未定义行为?
- c# - 如何将 MySql 连接器导入 Unity 项目?
- makefile - Makefile:处理以冒号分隔的环境变量
- web - 节点启动失败并出现错误:internal.Node.run - Corda 中节点启动 {} 期间出现异常
- mongodb - 带有 Tableau 的 Azure CosmosDB Mongo API
- android - OkHttp 无法从本地主机获取数据
- c# - 如何加快删除 Excel 中的列?
- c# - 在 Gridview 中加密 DataNavigateUrlFormatString 的查询字符串
- c++ - 为什么原始卷曲构造函数 {} 不返回右值?
- java - Java - 如何将一个类中的 ArrayList 中的项目传递给另一个类中的构造函数//getter 和 setter?