仅在Dijit MenuItem

时间:2019-07-05 12:18:02

标签: javascript dojo

以此处的基本教程为例: https://dojotoolkit.org/documentation/tutorials/1.10/menus/demo/simpleProgMenu.html

我注意到,没有(明显的)方法可以区分左击和右击。我想右键单击不执行任何操作,但要单击鼠标左键以调用菜单项上的onClick()。

检查传递给onClick函数的事件参数的内容,似乎没有什么告诉我单击了哪个鼠标按钮。

有没有办法做到这一点?

1 个答案:

答案 0 :(得分:1)

如果您希望右键单击不执行任何操作,则无需执行任何特殊操作。如果要处理右键单击,可以使用dojo/mouse模块及其mouseButtons对象。 文档中的示例:

require(["dojo/mouse", "dojo/on", "dojo/dom"], function(mouse, on, dom){
  on(dom.byId("someid"), "click", function(evt){
    if (mouse.isLeft(event)){
      // handle mouse left click
    }else if (mouse.isRight(event)){
      // handle mouse right click
    }
  });
});