如何在我的按钮中添加eventlistener?单击该按钮时,函数speler1gooien必须运行。当我在下面运行我的示例代码时,函数speler1gooien在页面加载时被触发。仅在单击时运行我的函数的正确方法是什么?
window.onload = function () {
buttonSpeler1 = document.getElementById("buttonspeler1");
buttonSpeler2 = document.getElementById("buttonspeler2");
tafelp2.src = "images/rechts_" + aantalBekersP2 + ".png";
resultaat = document.getElementById("resultaat");
buttonSpeler1.addEventListener("click", speler1gooien());
};
var speler1gooien = function() {
// some code
}
答案 0 :(得分:1)
删除调用speler1gooien()
中的括号,因为它会导致您的函数立即执行,并且返回值将作为click事件处理程序传递。
buttonSpeler1.addEventListener("click", speler1gooien);
// ^ removed ()
通过删除括号,您将传递函数对象,而不是执行它。
答案 1 :(得分:0)
您正在尝试将函数speler1gooien作为onclick处理函数附加,但您的代码作为处理程序附加了spele1gooien函数的结果。只需删除该功能名称后面的()
window.onload = function () {
buttonSpeler1 = document.getElementById("buttonspeler1");
buttonSpeler2 = document.getElementById("buttonspeler2");
tafelp2.src = "images/rechts_" + aantalBekersP2 + ".png";
resultaat = document.getElementById("resultaat");
buttonSpeler1.addEventListener("click", speler1gooien);
};
var speler1gooien = function() {
// some code
}