2016-11-01 7 views
1

画像はfabric.jsにロードされ、this linkを使用して画像にパン機能を追加しようとしています。 しかし、それはFirefox、Chromeでは正常に動作しますが、IEでは動作しません(画像をレンダリングするだけです)。私はe.e.movementXはFFとChromeの場合に適切な値を与えるが、それはIEの場合にundefinedを与えるで見るものFabricJSは私に動きXと動きYを与えてIEで画像をパンしますが、他のブラウザではうまく動作します

var panImg = function() { 
     var panning = false; 
     canvas.on('mouse:up', function (e) { 
      panning = false; 
     }); 
     canvas.on('mouse:out', function (e) { 
      panning = false; 
     }); 
     canvas.on('mouse:down', function (e) { 
      panning = true; 
     }); 
     canvas.on('mouse:move', function(e) { 
      if (panning && e && e.e) { 
       console.log(e.e.movementX); 
       var delta = new fabric.Point(e.e.movementX, e.e.movementY); 
       canvas.relativePan(delta); 
      } 
     }); 
    } 

私はデバッグする場合は、:

は、ここでは、コードです。 これはFabric.jsの問題ですか、何か不足していますか?私は コードに推測[email protected]の助けを借りて答えを得た

+1

https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/movementY – InferOn

+0

ありがとう@推論on – subhfyu546754

答えて

0

オーケー:

canvas.on('mouse:move', function(e) { 
      if (panning && e && e.e) { 
       var x = e.e.movementX; 
       var y = e.e.movementY; 
       if(!x) { 
        x = e.e.screenX - previousEvent.e.screenX; 
        y = e.e.screenY - previousEvent.e.screenY; 
       } 
       var delta = new fabric.Point(x, y); 
       canvas.relativePan(delta); 
      } 
      previousEvent = e; 
     }); 
+0

しかし、fabricjsみんなそれを処理する必要があります、それは彼らのライブラリを強化する:) – subhfyu546754

関連する問題