2

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 オブジェクトでは、イベントは発生しません。何か案が?

4

1 に答える 1

1

これを drawFunc の最後に追加して修正しました:

canvas.fillStroke(this);
于 2012-12-29T15:38:23.823 に答える