画像をオーバーレイする右上隅と左下隅の 100 x 100 ピクセルのグラフィックがあります。これらはクロップ マークを表します。それぞれにバインドされたドラッグ イベントがあり、これらのクロップ マークをドラッグして画像のサイズを変更できます。それはすべて機能しますが、隅の画像をクリックしても、マウスはグラフィックの左上のすぐ左にジャンプします。グラフィックは 100 x 100 ピクセルなので、右下をクリックした可能性があります。マウス (または指) を、最初にクリック (またはタッチ) した場所にとどまり、左上から飛び出さないようにしたいと考えています。イベント (または this.offsetLeft、this.offsetTop) によって返されるさまざまなオフセットを見ると、ポインターが終了する場所から開始する場所までの x、y オフセットが得られないようです。
開始点を決定し、それをドラッグの接点に保つ方法はありますか?
右上隅/クロップのドラッグ ハンドラは次のとおりです。
function ur_crop()
{
$('#ur_corner').bind('drag', function (event) {
event.preventDefault();
curX = event.pageX;
curY = event.pageY;
offsetX = curX - ur_curX;
offsetY = curY - ur_curY;
var $this = $(this);
$(this).css({
left: curX + 'px',
top: curY + 'px'
});
ur_curX = curX; // + offsetX;
ur_curY = curY; // + offsetY;
});
}
ありがとう!