Paper.js:为什么tool.onMouseDown不触发?

Paper.js: why does tool.onMouseDown not trigger?

我正在创建一个 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,也许这会造成某种干扰?

我也有同样的效果。这是由覆盖的 html 元素占用了点击事件引起的。添加

style="pointer-events:none;"

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

整行如下:

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