使用JavaScript将onrightclick属性添加到画布

时间:2012-05-22 09:55:29

标签: javascript html canvas event-handling dojo

我正在尝试将onrightclick属性添加到我的画布中,如下所示:

canvas.onclick = function(evnt) {
    doSomethingClick();
}

canvas.onrightclick = function(evnt) {
    doSomethingRightClick();              
}

代码很简单,我对'onclick'和'onrightclick'做同样的事情。 onclick部分正在运行,但是当我右键单击时,我右键单击浏览器。如何按预期覆盖浏览器右键?

2 个答案:

答案 0 :(得分:4)

可能你正在寻找oncontextmenu

<canvas id="cnv" width="200" height="200"></canvas>

var cnv = document.getElementById('cnv');
cnv.oncontextmenu = function() {
   alert('right click');  
   return false; 
}

示例小提琴(在Fx12 / MacOS上试过):http://jsfiddle.net/Jk3Jx/1

答案 1 :(得分:0)

dojo.connect(canvas, 'onclick', function(e) {
  if (dojo.mouse.isRight(e)) {
    ...
  }
});

如果你想使用dojo小部件使用上下文菜单,那么请查看

http://dojotoolkit.org/reference-guide/1.7/dijit/Menu.html