Paper.js:为什么too​​l.onMouseDown不会触发?

时间:2015-09-28 14:28:04

标签: javascript jquery svg paperjs

我正在创建一个Web应用程序,它使用Paper.js来操作通过SVG导入的向量。直到最近,一切都运作良好。然后,突然之间,onMouseDown事件停止被触发,即使onKeyDown和onMouseMove触发就好了。

我创建了一个Tool对象的实例,如下所示:

paper.setup("canvas");
var tool = new paper.Tool();
tool.activate();

然后我在代码中绑定事件,如下所示:

tool.onMouseDown = function (event) {
  console.log("Mouse down triggered!");
}
tool.onMouseMove = function (event) {
  console.log("Mouse move triggered!");
};

由于某种原因后者确实触发,但前者没有。其他事件如onKeyDown和onKeyUp也会触发,但onMouseDown和onMouseDrag不会做任何事情。有没有人知道造成这种情况的原因是什么?我也使用jQuery和jQueryUI,这可能会导致某种干扰吗?

1 个答案:

答案 0 :(得分:4)

我有同样的效果。它是由一个重叠的html元素占用点击事件引起的。添加

style="pointer-events:none;"

到元素html定义,然后两个事件都应该触发你的paper.js对象。

全行显示:

<div id="colorizerOptions" style="pointer-events:none;"></div>