javascript - Javascript:无法读取未定义的属性“classList” // 但是当我在控制台中尝试时,它可以工作
问题描述
Cannot read property 'classList' of undefined
我通过执行脚本得到错误,但是当我在控制台中尝试它时它工作正常。
这是我的功能:
function checkEmpty(){
td = document.getElementsByTagName('td')[0].classList.contains('atharva_minicart_empty')
if (td){
minicart = document.getElementById('atharva_minicart')
minicart.classList.add('minicart_empty')
}
}
控制台在这条线上给了我错误
td = document.getElementsByTagName('td')[0].classList.contains('atharva_minicart_empty')
但是当我在控制台中尝试它时它可以工作。有什么问题?非常感谢!
解决方案
您可以替换该行:
td = document.getElementsByTagName('td')[0].classList.contains('atharva_minicart_empty')
有更好的:
td = document.querySelector('.atharva_minicart_empty')
当您的页面之前没有任何td
或随机td
出现atharva_minicart_empty
时,document.getElementsByTagName('td')[0]
则会抛出错误。
推荐阅读
- windows - 如何使用 Powershell 获取更新后的文件夹大小
- json - Scala:在 Databricks 中将数据帧存储到 CosmosDB 时元素顺序不正确
- node.js - 将批量数据插入大查询而不将其保存在流缓冲区中
- node.js - 谷歌云存储不是一项功能
- ruby - Ruby 别名 alias_method 混淆
- spring-boot - FF4J 在 IBM WebSphere 8.5.11 服务器中使用 Spring Boot 在访问静态资源(css,img)时给出错误 500(SESN0008E)
- android - Gradle 同步失败。基本功能将无法正常工作
- python - 根据Python中的另一个数据框选择数据框的行
- java - 如何提高 For 循环性能
- dart - 从 Flutter 应用获取父对象信息