2

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

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

これが知られているかどうか、または回避策があるかどうかはわかりませんが、可能な限り助けていただければ幸いです。

4

1 に答える 1

2

機能させるには、FabricJs コードを変更する必要があります。問題は getPointer 関数にあります。all.js で検索すると、kangax からの「このメソッドには修正が必要です」というコメントが表示されます。

回避策として、この関数を次のように置き換えることができます

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

ここで、「コンテナ」はキャンバスのラッパー div です。正確なIDを入力する必要があるため、良くありませんが、機能します。

お役に立てれば。

于 2012-04-12T09:01:55.403 に答える