这有效:

paper.on('cell:pointerdown', function(cellView, evt, x, y) {
   alert("pointerdown");
});

但这段代码没有:
paper.on('cell:pointerclick', function(cellView, evt, x, y) {
   alert("pointerclick");
});

这样做的原因是pointerdown 总是首先触发,我怎样才能使用pointerclick 而不会遇到pointerdown?

编辑:这个问题可能有点误导:我想知道为什么当我单击鼠标指针时根本没有触发pointerclick。 ponterdown 正在工作,但它停在那里,没有进一步传播(例如,当我按下鼠标按钮时..- 因此执行点击)

最佳答案

好的,我找到了解决方案。在joint.js中有一个开关:

        // Allowed number of mousemove events after which the pointerclick event will be still triggered.
        clickThreshold: 0,

所以如果我这样设置我的论文:
var paper = new joint.dia.Paper({
    //... other settings
    clickThreshold: 1  //or any number > 0 if you have more specific events there
})

有用!在jointJS 的文档中没有关于clickThreshold 的内容,我想添加它是值得的,尤其是与pointerclick 等事件结合使用时。

关于JointJS - 为什么pointerclick 事件不起作用,只有pointerdown 被触发,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35443524/

10-10 17:15