Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/397.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将事件附加到HTML5画布?_Javascript_Html_Canvas - Fatal编程技术网

Javascript 如何将事件附加到HTML5画布?

Javascript 如何将事件附加到HTML5画布?,javascript,html,canvas,Javascript,Html,Canvas,所以我知道你可以直接做: <canvas id="someCanvas" onmousedown="blah();"> <script> function blah() { dosomething(); } </script> 但它不起作用,doSomething也不被称为。。。我做错了什么?尝试使用AddEventListener,例如: canvas.addEventListener(“鼠标向下”, 函数(){}) 对我有效:确保在加载DOM时执行代码

所以我知道你可以直接做:

<canvas id="someCanvas" onmousedown="blah();">

<script>
function blah() {
dosomething();
}
</script>

但它不起作用,doSomething也不被称为。。。我做错了什么?

尝试使用AddEventListener,例如:

canvas.addEventListener(“鼠标向下”, 函数(){})


对我有效:确保在加载DOM时执行代码。也就是说,将回调附加到
body.onload
或将代码放在页面底部(或通常放在canvas元素之后)。另外,请正确关闭画布元素。这不会造成任何影响。您必须提到,它必须是IE中的
canvas.attachEvent
var canvas = document.getElementById("someCanvas");

canvas.onmousedown = function() {
  doSomething();
}