Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript查询选择器提供空值_Javascript_Html_Css - Fatal编程技术网

Javascript查询选择器提供空值

Javascript查询选择器提供空值,javascript,html,css,Javascript,Html,Css,我有这样的html <button class="pop-btn"> Pop </button> 其中Open_Populationdiv是我编写的一个函数。一切似乎都准备就绪,但我仍然在控制台上收到一条错误消息,并且脚本无法工作: 未捕获类型错误:填充分区按钮为空 http://127.0.0.1:5500/app.js:6 发生此错误是因为函数在DOM准备就绪之前运行,因此在添加事件侦听器时div元素为null 您可能希望在

我有这样的html

<button class="pop-btn">
  Pop 
</button>        
其中Open_Populationdiv是我编写的一个函数。一切似乎都准备就绪,但我仍然在控制台上收到一条错误消息,并且脚本无法工作:

未捕获类型错误:填充分区按钮为空 http://127.0.0.1:5500/app.js:6


发生此错误是因为函数在DOM准备就绪之前运行,因此在添加事件侦听器时div元素为null

您可能希望在执行该行之前添加一个条件:

if(Population_div_Button !== null){
   Population_div_Button.addEventListener("click", function(){
       Open_Populationdiv();
   });
}

您的类是pop div,但在查询选择器中使用pop_div这些注释对于div来说是正确的,但我认为问题在于buttongys,button有class属性,而不是id属性。关于前面提到的div问题,我测试了您的代码,它可以正常工作。这意味着,我想知道问题是否出在javascript本身的位置上。您是将javascript放在网站的头部还是底部?如果要将其放在头部,则需要将其包装在窗口中。addEventListener'DOMContentLoaded',event=>{因为它引用的是尚不存在的dom元素。哦,天哪,有没有像我把JavaScript放在哪里这样的事情?但是如果Population_div_Button===null呢?我需要添加事件监听器。你能给我们看完整的代码吗?顺便说一句,我修复了它。问题是,我是在加载脚本,而不是在最后,我甚至不知道这是一个呵呵,但要生活和学习
if(Population_div_Button !== null){
   Population_div_Button.addEventListener("click", function(){
       Open_Populationdiv();
   });
}