2

Raphael JS に基づいたホワイトボード アプリケーションに取り組んでいます。用紙サイズが Web ページの表示可能部分よりも大きい場合、右と下のスクロールバーが追加されます。しかし、スクロール バーが原因で、正しいマウス座標を取得できません。たとえば、紙を下にスクロールして右下隅のどこかに(ラファエルを使用して)線を引くと、オブジェクトは紙の表示可能な部分にのみ作成されます。これは、マウスの座標と描画された要素が同じ場所にないことを意味します。スクロールバーが移動したときに要素を正しい場所に印刷するために、マウス座標に加算または減算できる x 座標と y 座標のオフセットを見つける方法。

4

1 に答える 1

1

I've run into this issue doing drag and drop with Raphael before, and it turns out Raphael's dragMove wrapper contains an excellent example of how to address this problem. In short, you can get the current scroll offset via the scrollLeft and scrollTop members of the document. Take a look at the dragMove function in the uncompressed source -- it's much more straightforward than it looks.

于 2013-01-29T20:36:23.277 に答える