【发布时间】:2017-03-05 07:08:34
【问题描述】:
我的 JS 脚本开头有以下代码。当我尝试在该代码下方打印任何已定义的变量时,控制台会显示未定义变量。你能告诉我为什么吗?也许我应该先调用这个函数? 当我在下面定义变量然后将其打印到控制台时,它工作正常。
代码如下:
document.addEventListener("DOMContentLoaded", function(){
var homeElement = document.getElementById("home");
var childElements = document.querySelector(".oferts").children;
var banner = document.querySelector(".ban");
var blocks = document.querySelectorAll(".block");
var links = document.querySelector(".links").children;
});
console.log(homeElement); //Here I got info that this variable is not defined
提前感谢您的帮助!
【问题讨论】:
-
因为 console.log 行在 DOM 准备好之前执行并且你的监听器被调用。此外,您的变量似乎是该处理程序的本地范围。
标签: javascript variables addeventlistener