将单击事件分配给Image对象

时间:2014-08-09 00:53:13

标签: javascript events onclick

我正在使用JavaScript工作,我正在尝试点击一个对象并简单地发生一些事情,例如警报。

所以我已经宣布了这个对象:

var panel = new Image();
panel.src = IMAGES_PATH + "panel.png";

然后我把它画到了屏幕上。

ctx.drawImage(panel, 475, 140);

我现在面临的问题是我想点击它,我想要一个功能来解雇。

尝试#1

panel.onclick = function () {
    alert("You clicked!");
}

尝试#2

panel.addEventListener('click', function ()
{
    alert('blah');
}, false);

我知道点击事件在Google Chrome中有效,因为我可以这样做:

window.addEventListener("click", click, false);

为什么我不能为Image类进行onclick的任何想法?

2 个答案:

答案 0 :(得分:1)

感谢你们的建议,我已经决定通过在画布上获取鼠标x和y位置并找出可以点击它来触发事件的位置来做到这一点。

http://www.html5canvastutorials.com/advanced/html5-canvas-mouse-coordinates/

答案 1 :(得分:0)

看起来您正在使用画布绘制形状。现在,您可以在画布上为对象注册单击事件。

请参阅这篇文章以获得一些好的建议

Canvas images and Click event