关于javascript:onClick不适用于我的按钮

onClick not working for my button

我正在创建一个网站,我将展示我的作品。 然后我注意到我需要一个Cookie通知。 因为我想自己100%(没有发电机等),我开始创造它。 Cookies本身工作正常,但main.js没有注册按钮的onClick。

这是代码:

1
2
3
4
var acceptButton = document.getElementById("cookieAccept");
acceptButton.onclick = function() {
    alert("HELLO");
}

我按钮的代码:

1
<button id="cookieAccept" class="cookieButton">Accept</button>

我一直在谷歌搜索,搜索StackOverflow等。没有答案对我有用(还)。 以下是我尝试的解决方案:

  • jQuery的
  • object.onclick = function() {}
  • object.addEventListener("click", false);
  • object.addEventListener("click", false)放在window.onload

任何提示/帮助?
- XaafCode

编辑

控制台错误:

1
Uncaught TypeError: Cannot set property 'onclick' of null


请记住在标记下的Javascript语法之前放置HTML代码。


确保将js代码包装在一个函数中,一旦浏览器设置了所有html,您将注册执行该函数:

1
2
3
4
5
6
window.onload = function() {
    var acceptButton = document.getElementById("cookieAccept");
    acceptButton.onclick = function() {
        alert("HELLO");
    }
}

Cfr。:https://developer.mozilla.org/en-US/docs/Web/API/GlobalEventHandlers/onload


在这种情况下可能的原因只是。

这会奏效

1
2
3
4
5
6
 <button id="cookieAccept" class="cookieButton">Accept</button>
   
    var acceptButton = document.getElementById("cookieAccept");
    acceptButton.onclick = function() {
        alert("HELLO");
    }

确保在编写html之前没有Js。 首先是html然后是Js。 还要确保没有两个同名的id。 这可能有一段时间会产生问题。

这不行

1
2
3
4
5
6
    var acceptButton = document.getElementById("cookieAccept");
    acceptButton.onclick = function() {
        alert("HELLO");
    }
   
    <button id="cookieAccept" class="cookieButton">Accept</button>