2012-02-27 22 views
2

私はFabricJSを使用してアプリケーションを作成しています。親のdiv/containerをスクロールすると、スクロールされる量に直接関係するオブジェクトの選択可能な領域が右にオフセットされることがわかりました。FabricJSキャンバス、スクロールする親コンテナが子ヒット領域を移動する

私は1200x600のキャンバスと600x600のコンテナdivを持っていて、400,120でそのキャンバスにrectを追加します。私が200pxをスクロールすると、それを選択するためにrectをクリックできません。むしろ、マウスを600、120(空白)に移動させてクロスバーを取得し、矩形を選択する必要があります。

これがわかっているのか、回避策があるのか​​わかりませんが、可能な限りお手伝いします。

答えて

2

FabricJsコードを修正して機能させる必要があります。 問題はgetPointer関数にあります。もしall.jsで検索すると、 "このメソッドはkangaxからの修正が必要です"というコメントに気付くでしょう。

この問題を回避するには、「コンテナ」は、あなたのキャンバスのラッパーdiv要素である

function getPointer(event) { 
    // TODO (kangax): this method needs fixing 
    return { x: pointerX(event) + document.getElementById("container").scrollLeft, y: pointerY(event) + document.getElementById("container").scrollTop }; 
} 

でこの機能を代用することができます。あなたは正確なIDを入れなければならないので、それはうまくありませんが、うまくいきます。

これが役に立ちます。

+0

ありがとう! –

関連する問題