以前の「レイヤーのドラッグ」に関するエッセイで、要素をドラッグできるかどうかを決定するためにブール変数を使用してドラッグを実装したことを思い出します。
過去 2 日間でいくつかのことを読んだ後、このブール変数を設定する必要がないことがわかりました。
実装プロセス:
マウスが押されたとき、ドキュメント オブジェクト (のもちろん他の DOM オブジェクトでも構いません) ハンドラー関数を移動イベントにバインドし、マウスが上がったときにリリース ハンドラー関数もバインドします。
//マウスを押して移動したとき(ドラッグ) 、呼び出される関数;
function startSelection(event){
...
}
//移動をキャンセルするときの処理関数
function cancelSelection() {
$ (document).unbind('mousemove', startSelection).unbind('mouseup', cancelSelection);
}
//マウスが押されたときに呼び出される関数
function imgMouseDown(イベント){
$(document).mousemove(startSelection).mouseup(cancelSelection);
$img.bind("mousedown",imgMouseDown)