RaphäelとRaphäelSketchpadライブラリを使用して、ブラウザでスケッチパッドを作成します。これは正常に機能します。RapäelZPD(https://github.com/andrewseddon/raphael-zpd)を実装して、sketchpad/SVGコンテナーdivでパン/ズームを実行しました。ズームアウトして再度ズームインすると、カーソルが置き忘れられます(Firefox / Chrome)。
ズームまたはドラッグしたときにカーソルの位置が間違ってしまう原因となるZPDの次のコードを特定しました。
/**
* Instance an SVGPoint object with given event coordinates.
*/
me.getEventPoint = function(evt) {
var p = me.root.createSVGPoint();
p.x = evt.clientX;
p.y = evt.clientY;
return p;
};
ZPDが組み込まれているSVGPanにも同じ問題があります:http ://code.google.com/p/svgpan/issues/detail?id = 14&can = 1&q=zoom 。ただし、報告された問題の提案はどれも機能していないようです。このオフセットが発生する方法または理由に関するアドバイスとその解決策はありますか?