1

私はそのような関数のコードアーカイブをいくつか持っています:

ブラウザで、画像をドラッグできます。コードは次のようになります。

  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でこれに対する可能な解決策はありますか? 私はこれに多くの時間を費やしました...

オンラインで回答します。どうもありがとうございました。

4

1 に答える 1