画像をクリックしてドラッグするキャンバスがありますが、開始点に「スナップ」し続けるため、非常に面倒です。自分の論理で犯した間違いを解決できない理由がわかりません。
私のmousemove
イベントは:
function updt(evt) {
var difx = evt.pageX - clickx;
var dify = evt.pageY - clicky;
offsets.cur_offsetx = init_offsetx - difx;
offsets.cur_offsety = init_offsety - dify;
if (offsets.cur_offsetx < 0) {
offsets.cur_offsetx = 0;
clickx = evt.pageX;
}
if(offsets.cur_offsety < 0){
offsets.cur_offsety = 0;
clicky = evt.pageY;
}
}
問題を再現するためにjsfiddleを作成しました:http://jsfiddle.net/jQkNv/1/
マウスをクリックして右にドラッグすると、画像が元の開始点にスナップし続けます。
これを修正するにはどうすればよいですか?