私はそのような関数のコードアーカイブをいくつか持っています:
ブラウザで、画像をドラッグできます。コードは次のようになります。
function activateMove() {
isMoving = false;
$thumb.bind('mousedown', startMove);
}
function startMove() {
isMoving = true;
$(document).bind('mousemove', moveUpdate);
$(document).bind('mouseup', endMove);
return false;
}
function endMove() {
isMoving = false;
$(document).unbind('mousemove', moveUpdate);
$(document).unbind('mouseup', endMove);
return false;
}
関数の一部しかコピーしていませんが、十分に明確なはずです...
問題はmouseupイベントです。IE8 を除くすべてのブラウザで正常に動作しています。
親指をドラッグしてブラウザの外でマウスを放すと、(マウスを押さずに) マウスを動かすと画像が動きます。この自動移動を停止するには、もう一度クリックする必要があります。
つまり、次のことを意味します。
- 画像をクリック
- ドラッグしてから、ページの表示領域の外でマウスを離します (たとえば、アドレス バーでマウスを離します)。
- マウスを上下に動かすと、画像がマウスとともに移動します (これは理想的な動作ではありません)。
IE8でこれに対する可能な解決策はありますか? 私はこれに多くの時間を費やしました...
オンラインで回答します。どうもありがとうございました。