Javascript 创建事件侦听器时,函数会立即启动
我正在编写一个函数,当单击一个图像时,它将向另一个图像添加一个事件侦听器。创建事件侦听器时,myFunction()会立即被调用,而不是等待单击第一步Javascript 创建事件侦听器时,函数会立即启动,javascript,jquery,Javascript,Jquery,我正在编写一个函数,当单击一个图像时,它将向另一个图像添加一个事件侦听器。创建事件侦听器时,myFunction()会立即被调用,而不是等待单击第一步 function firstImageClick(){ //add event listener document.getElementById("firstStep").addEventListener("click", myFunction()); } 参数应该是myFunction而不是myFunction()参数
function firstImageClick(){
//add event listener
document.getElementById("firstStep").addEventListener("click", myFunction());
}
参数应该是
myFunction
而不是myFunction()
参数应该是myFunction
而不是myFunction()
您不是将myFunction
添加为回调,而是将调用返回到myFunction
您必须传递函数,而不是调用它:
enfunction firstImageClick(){
//add event listener
document.getElementById("firstStep").addEventListener("click", myFunction);
}
您没有将
myFunction
添加为回调,而是将调用返回到myFunction
您必须传递函数,而不是调用它:
enfunction firstImageClick(){
//add event listener
document.getElementById("firstStep").addEventListener("click", myFunction);
}
像下面那样调用该函数
function firstImageClick(){
//add event listener
document.getElementById("firstStep").addEventListener("click",
myFunction);
}
从
myFunction
中删除括号,如下调用该函数
function firstImageClick(){
//add event listener
document.getElementById("firstStep").addEventListener("click",
myFunction);
}
从
myFunction
中删除括号。括号使函数立即启动。通过去掉括号来更改代码段的结尾。
(“单击”,myFunction())代码>至(“单击”,myFunction)代码>括号使函数立即启动。通过去掉括号来更改代码段的结尾。
(“单击”,myFunction())代码>至(“单击”,myFunction)
从addEventListener()
的第二个参数中的myFunction()
中删除括号。包含括号将立即调用函数。正确的代码应该如下所示:document.getElementById(“第一步”).addEventListener(“单击”,myFunction)代码>从addEventListener()
的第二个参数中的myFunction()
中删除括号。包含括号将立即调用函数。正确的代码应该如下所示:document.getElementById(“第一步”).addEventListener(“单击”,myFunction)代码>