我正在构建一个益智游戏。它确实可以在浏览器中运行,但我需要让它在visual studio上运行。它显示了图片和一切,但是当我点击时我得到了这个错误
0x800a1391 - JavaScript运行时错误:'onCanvasClick'未定义
我有一段代码
的prb <canvas id="myCanvas" width="640" height="480" onclick="onCanvasClick(event);">
它不接受 onCanvasClick(事件);
我无法找到让它发挥作用的方法。如果你能帮助我,我将非常感激。
答案 0 :(得分:4)
试试这个:
canvas = document.getElementById("myCanvas");
// Beware, this is "click" not "onclick"
canvas.addEventListener('click', canvasClicked, false);
function canvasClicked(e) {
console.log("Clicked");
}
上查看
答案 1 :(得分:4)
如Sam Rad所述,您应该在&lt; script&gt;中添加事件监听器。标签不是HTML中的内联。我认为原因是,你的函数是未声明的,因为它是在不同的范围内声明的。在内联HTML脚本中使用它时,它正在全局范围内查找该函数。
所以,如果你有这样的事情:
(funciton() {
function canvasClicked( event ) {
// ...
}
})()
您的内联HTML脚本将失败。
只是避免使用内联HTML脚本,您将使您的生活更轻松:D