我绘制了一个画布,然后使用代码
canvas.addEventListener("mousedown", clicked(event), false);
每当我点击鼠标时,我都会添加一个事件监听器来点击运行。 但是当我在chrome上逐行浏览代码时,它添加事件监听器的那一刻它会自动运行所点击的函数,但我只想让它在我点击时运行该函数。
我做错了吗?
答案 0 :(得分:0)
canvas.addEventListener(“mousedown”,clicked,false);
答案 1 :(得分:0)
你需要传递函数引用,而不是实际调用它:
canvas.addEventListener("mousedown", clicked, false);
然后,该函数应该像这样定义:
function clicked(event) {
// code here
}
当您在函数名称后面包含parens时,它会立即执行,并且它的返回值是传递给addEventListener()
的值,这可能根本不是您想要的。不要让parens只传递函数参考。