javascript - QuerySelector 返回 null。如何让 querySelector 返回
问题描述
在此页面和我观看的视频中,一切正常并返回 < h1> Hello < /h1>。但是,Chrome 仍然返回 null。我将非常感谢您的帮助。我已经绝望了。
let myH1 = document.querySelector("h1");
console.log(myH1)
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>###</title>
<link href="style.css" rel="stylesheet" type="text/css" />
<script src="script.js"></script>
</head>
<body>
<h1>Hello</h1>
</body>
</html>
解决方案
发生这种情况是因为脚本在 HTML 之前加载,所以querySelector
没有找到任何东西。
为避免此问题,您必须在 HTML之后加载脚本body
或创建一个侦听器以在页面加载时执行。以下是示例:
在 HTML 之后加载 Javascript
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>###</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h1>Hello</h1>
<script src="script.js"></script>
</body>
</html>
与听众
function onLoad() {
let myH1 = document.querySelector("h1");
console.log(myH1);
}
document.addEventListener("DOMContentLoaded", onLoad);
推荐阅读
- python-3.x - apsheduler 关注点分离打破了它
- go - gin-contrib/cors 返回 404
- random-forest - H2O随机森林生成的样本树中的预测值
- symfony - Symfony 4 NelmioApiDocBundle 安全标头未设置
- python - 无法将自定义模块导入测试或主服务器
- angular - Firebase-tools:尝试通过带有 Angular 应用程序的 Google Cloud Build 部署到 Firebase 时出现 404 错误
- powerbi - 从汇总数据创建计算字段
- android - 在存储库空指针异常中使用 AsyncTask 进行 Android 房间查询
- python - 如何解决此 NameError: name 'clf' is not defined?
- apache-spark - 为 emr 上的“spark-submit”作业指定标记扫描 gc