开发者问题收集

如何修复它:“未捕获的类型错误:无法读取 null 的属性‘addEventListener’”......?

2019-07-24
90

我正在通过视频教程学习 html/css/js。 我正在学习如何编写 js 代码,但我无法帮助解决问题。 我希望你们能给我解决方案。 问题是关于 add.EventListener 的。 当我在 chrome 中运行代码时,控制台中显示:“app.js:11 Uncaught TypeError:无法读取 null 的属性‘addEventListener’” 我希望在你的帮助下解决这个问题。 谢谢!

const computerScore = 0;
const userScore_span = document.getElementById("user-score");
const computerScore_span = document.getElementById("computer-score");
const scoreBoard_div = document.querySelector(".score-board");
const result_div = document.querySelector(".result");
const p_div = document.getElementById("p");
const r_div = document.getElementById("r");
const s_div = document.getElementById("s");

p_div.addEventListener('click', function() {
    console.log("hey you clicked on p");
})`
2个回答
如果页面上没有具有该 ID 的元素,则

document.getElementById('p') 将返回 null。我建议仔细查看 HTML 并确保您确实有一个具有该 ID 的元素。

在创建该常量后,您可以在尝试 addEventListener 之前使用 console.log(p_div) 查看该元素的值。

nicholascm
2019-07-24

您可以检查p_div是否存在。

387306946
Denis Omerovic
2019-07-24