为什么事件侦听器无法读取 属性?
Why event listener cannot read property?
我是 Javacript 的新手,我正在尝试一些活动。这里的目标是点击一些文本并显示一条消息。我的 html 中有一个 p 元素,如下所示:
<p id="tab">Click me</p>
我在 .js 文件中尝试了这个,但没有任何反应。控制台这样告诉我:"Uncaught TypeError: Cannot read property 'addEventListener' of null".
var demo=document.getElementById("tab");
demo.addEventListener("click", go);
function go(){
alert("Hey");
}
以上代码位于一个单独的 .js 文件中
您的脚本似乎运行良好。通过在其中添加 onload
处理程序,或将其放在 </body>
之前,确保它在创建元素后运行
var demo = document.getElementById("tab");
demo.addEventListener("click", go);
function go() {
console.log("Hey");
}
<p id="tab">Click me</p>
Code shown below works in IE, Chrome and FireFox - I didn't test this in
any other browser.
<!DOCTYPE html>
<html>
<head>
<title>Test Page</title>
<script type="text/javascript">
function InitPage() {
var demo = document.getElementById("tab");
demo.addEventListener("click", go);
function go() {
console.log("Hey");
}
}
</script>
</head>
<body onload="InitPage();">
<p id="tab">Click me</p>
</body>
</html>
我是 Javacript 的新手,我正在尝试一些活动。这里的目标是点击一些文本并显示一条消息。我的 html 中有一个 p 元素,如下所示:
<p id="tab">Click me</p>
我在 .js 文件中尝试了这个,但没有任何反应。控制台这样告诉我:"Uncaught TypeError: Cannot read property 'addEventListener' of null".
var demo=document.getElementById("tab");
demo.addEventListener("click", go);
function go(){
alert("Hey");
}
以上代码位于一个单独的 .js 文件中
您的脚本似乎运行良好。通过在其中添加 onload
处理程序,或将其放在 </body>
var demo = document.getElementById("tab");
demo.addEventListener("click", go);
function go() {
console.log("Hey");
}
<p id="tab">Click me</p>
Code shown below works in IE, Chrome and FireFox - I didn't test this in
any other browser.
<!DOCTYPE html>
<html>
<head>
<title>Test Page</title>
<script type="text/javascript">
function InitPage() {
var demo = document.getElementById("tab");
demo.addEventListener("click", go);
function go() {
console.log("Hey");
}
}
</script>
</head>
<body onload="InitPage();">
<p id="tab">Click me</p>
</body>
</html>