javascript - Javascript中的 "button is null"是什么意思?

标签 javascript

我刚刚开始使用 JavaScript 编码,并决定运行一些代码。 (如下图)

var handleClick = function (event) {
    alert('Hello there!');
};
var button = document.querySelector('#big-button');
button.addEventListener('click', handleClick);

但是,每当我运行代码时,它都会说按钮为空。有帮助吗?

最佳答案

来自the documentation :

Returns null if no matches are found; otherwise, it returns the first matching element.

所以,当你运行querySelector时DOM 中没有具有 ID big-button 的元素。

这通常是由于将脚本放在head中引起的并尝试访问 body 中的元素。解决这个问题的方法包括:

  • 移动<script>因此它出现在您尝试访问的元素之后。这可以紧接在它之后或就在 </body> 之前。标签。
  • 将代码包装在函数中并将该函数绑定(bind)为 load事件处理程序。
  • 将事件监听器绑定(bind)到 window并测试event.target当事件触发时查看它是否与元素匹配。

关于javascript - Javascript中的 "button is null"是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32231462/

相关文章:

javascript - 在 ajax 更新期间离开网页

javascript - 为什么在 JavaScript 中使用 moveTo 会出错?

javascript - 嵌入并自动播放来自freesound.org的声音

javascript - webpack 将其输出放在哪里供 webpack 开发服务器使用?

javascript - 如何通过 JavaScript 使用重置功能

php - Jquery 附加输入值 - 验证后不显示输入的值

javascript - 在 HTML URL 链接中传递值

javascript - 如何从 spring mvc Controller 获取 jQuery $.post 的 POST 请求参数?

javascript - 使用 -H 将 Curl 转换为 Javascript

javascript - 获取 javascript 函数参数