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> |