我有这些变量,指的是一个按钮和一个盒子功能由事件侦听器运行称为无事件
var showGreen = document.getElementById("showGreen");
var greenBox = document.getElementById("greenBox");
这些功能由事件侦听器
function showBox(myElement){
myElement.style.display = "block";
}
function hideBox(myElement){
myElement.style.display = "none";
}
showGreen.addEventListener("click", showBox(greenBox));
hideGreen.addEventListener("click", hideBox(greenBox));
然而,什么也没有发生的时候叫我点击按钮。 我注意到,摆脱hideBox函数使得该框立即出现,所以我认为这些函数是自己运行的,无论点击或不点击任何东西。为什么? 完整代码在这里:http://jsbin.com/poxutopuhu/edit?html,css,js,output
你需要传递一个函数,而不是调用结果 – Bergi
您可能想要绑定该框:'... addEventListener(“click”,showBox.bind(this,greenBox))' –