事件不适用于kineticjs中的自定义形状

时间:2012-12-28 15:08:19

标签: kineticjs

我使用Kinetic.Shape在kineticjs中绘制了自定义形状,然后我将鼠标事件附加到此形状上。然而事件永远不会解雇:

var myShape = new Kinetic.Shape({
      drawFunc: function (canvas) {
              var context = canvas.getContext();
              context .beginPath();
              context .moveTo(47.1, 139.8);
              context .lineTo(50.5, 137.6);
              .
              .
              .
              context .closePath();
              context .fillStyle = color;
              context .fill();

          },
          fill: '#2369e7',
          stroke: 'black',
          strokeWidth: 2
      });

myShape.on('mousedown', function ()
      {
          //this never fires
      });

我尝试使用Circle和Rectangle这样的事件,就像示例文档一样,它可以工作。但是对于Kinetic.Shape对象,事件永远不会发生。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

通过在drawFunc:

的末尾添加它来修复它
canvas.fillStroke(this);