1

我正在尝试在从模具拖到纸元素上的形状上实现不同事件的代码。pointerup 事件触发元素周围带有选项的光环。双击事件触发一些模态窗口,右键单击事件触发带有单击操作的自定义上下文菜单。如何区分 Rappid 中的不同事件,例如左键单击、右键单击、单击鼠标滚轮。我有如下代码。

this.paper.on({
        'element:pointerup': onElementClick,
         //something like contextmenu
        //'element:contextmenu': onElementRightClick,
    });

这是我从 rappid 获得的用于单击和双击的解决方法。它正在工作,但我也在寻找右键单击功能。请帮忙。

paper.on({
    'element:pointerdown': onElementClick
});
var clickTimerId;
function onElementClick(view) {
    if (clickTimerId) {
        // double click
        window.clearTimeout(clickTimerId);
        clickTimerId = null;
        onElementDblClick(view);
    } else {
        // single click
        clickTimerId = window.setTimeout(click, 200);
    }
    function click() {
        clickTimerId = null;
        // open halo and inspector here
    }
}
function onElementDblClick(view) {
    // open the modal window here
}
4

1 回答 1

0

cell:contextmenu - 当用户右键单击论文中的单元格时触发。

来自jointjs api文档,所以请尝试以下

paper.on({
    'element:contextmenu': onElementRightClick
});

function onElementRightClick(view) {

}
于 2017-01-04T14:14:53.793 回答