clearTimeoutが呼び出された後も、setTimeoutは実行を継続します

ケビン・ガルドゥニョ

マウスが下がっているときにオブジェクトを1方向に移動するようにアニメーション化していますが、マウスクリックが上がると、アニメーションが停止します。

setTimeoutを使用していますが、クリックを解放した後もしばらく動き続けます。

var stopmov
function tomove(){
    $('.plwid').animate({
        left: '+=1'
    },1);
    stopmov=setTimeout(function(){ tomove(); }, 1);
}

$('.plwid').mouseup(function(){
    clearTimeout(stopmov);
}).mousedown(function(){
    tomove();
});

http://jsfiddle.net/oa9bsqy1/

オオカミ

私は周りにプレイしましたsetTimeoutし、setInterval私はそれがjQueryのアニメーションの完了コールバックで再帰呼び出しを使用する方が良いと思います。

また、停止は$('.plwid').stop();。を使用すると非常に簡単です。

以下のデモとこちらのJSFiddleをご覧ください

function tomove() {
    $('.plwid').animate({
        left: '+=10'
    },
    100, 'linear', tomove);
}

$(document).mouseup(function () {
    $('.plwid').stop();
});

$('.plwid').mousedown(function () {
    tomove();
});
.plwid {
    position:relative;
    left:10px;
    background:red;
    width:100px;
    height:100px;
    cursor:pointer;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="plwid"></div>

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

jQuery/JS setTimeout() は、clearTimeout() が呼び出された後も実行されます。

分類Dev

clearIntervalが呼び出された後も、setIntervalは実行を継続します

分類Dev

「zsh」を呼び出した後、スクリプトの実行を継続する方法はありますか?

分類Dev

google-colaboratoryで接続が失われた後も、プログラムは実行を継続しますか?

分類Dev

clearTimeout後もSetTimeoutコードが実行されるのはなぜですか

分類Dev

phpはページを離れた後も実行を継続します

分類Dev

jQueryは、3つのAJAX呼び出しとループが実行された後に実行されます

分類Dev

関数は戻った後も実行を継続します

分類Dev

すべてのlatch.countdown()が呼び出されても、プログラムは実行を続けます

分類Dev

setTimeoutが実行を終了した後に関数を呼び出す-Javascript

分類Dev

Selectorクラスが削除されてもajaxは実行を継続します

分類Dev

ScanJobは、15分が経過した後も呼び出しを継続し、リージョンが一致すると停止します。

分類Dev

すべての setTimeout 関数が実行された後に関数を呼び出す方法

分類Dev

キャンセルが呼び出された後もスレッドが実行され続けるのはなぜですか?

分類Dev

setTimeoutは、関数呼び出しで経過した時間ではなく、すぐに実行されます

分類Dev

プロセスがSIGSTOPで停止された後も、選択タイマーは実行を継続しますか?

分類Dev

TImage.Picture.LoadFromFileを呼び出した後、コードが続行されるのはなぜですか?

分類Dev

Javaで例外がスローされた後も実行を継続する

分類Dev

ajax呼び出しの実行後にデータが追加されたら、メソッドを呼び出す

分類Dev

printf()を呼び出すたびに新しい内部バッファーが作成されますか、それとも後続のすべての呼び出しで最初の呼び出しと同じバッファーが使用されますか?

分類Dev

条件が満たされた後にhttpget callを実行する方法。そうでない場合は、角度4で再試行して再度呼び出します。

分類Dev

クラスが呼び出された後、初期化でメソッドを実行します

分類Dev

Hystrix は、バックエンド API が実行されても、fallbackMethod を呼び出します

分類Dev

takeWhile演算子が「false」を返した後もRXJSタイマーは実行を継続します

分類Dev

.resumeは、他のデリゲートメソッドを呼び出した後に実行されます

分類Dev

呼び出されたプログラムが例外をスローした場合、Windowsタスクは実行を続けますか?

分類Dev

アプリを呼び出すターミナルを閉じた後もアプリを実行し続ける方法はありますか?

分類Dev

PHP PHPSESSIDは、session_name(***)を呼び出した後も存続します

分類Dev

捕捉されなかったSIGINT(ターミナルからCtrl-C)を受信した後も、プロセスは実行を継続します

Related 関連記事

  1. 1

    jQuery/JS setTimeout() は、clearTimeout() が呼び出された後も実行されます。

  2. 2

    clearIntervalが呼び出された後も、setIntervalは実行を継続します

  3. 3

    「zsh」を呼び出した後、スクリプトの実行を継続する方法はありますか?

  4. 4

    google-colaboratoryで接続が失われた後も、プログラムは実行を継続しますか?

  5. 5

    clearTimeout後もSetTimeoutコードが実行されるのはなぜですか

  6. 6

    phpはページを離れた後も実行を継続します

  7. 7

    jQueryは、3つのAJAX呼び出しとループが実行された後に実行されます

  8. 8

    関数は戻った後も実行を継続します

  9. 9

    すべてのlatch.countdown()が呼び出されても、プログラムは実行を続けます

  10. 10

    setTimeoutが実行を終了した後に関数を呼び出す-Javascript

  11. 11

    Selectorクラスが削除されてもajaxは実行を継続します

  12. 12

    ScanJobは、15分が経過した後も呼び出しを継続し、リージョンが一致すると停止します。

  13. 13

    すべての setTimeout 関数が実行された後に関数を呼び出す方法

  14. 14

    キャンセルが呼び出された後もスレッドが実行され続けるのはなぜですか?

  15. 15

    setTimeoutは、関数呼び出しで経過した時間ではなく、すぐに実行されます

  16. 16

    プロセスがSIGSTOPで停止された後も、選択タイマーは実行を継続しますか?

  17. 17

    TImage.Picture.LoadFromFileを呼び出した後、コードが続行されるのはなぜですか?

  18. 18

    Javaで例外がスローされた後も実行を継続する

  19. 19

    ajax呼び出しの実行後にデータが追加されたら、メソッドを呼び出す

  20. 20

    printf()を呼び出すたびに新しい内部バッファーが作成されますか、それとも後続のすべての呼び出しで最初の呼び出しと同じバッファーが使用されますか?

  21. 21

    条件が満たされた後にhttpget callを実行する方法。そうでない場合は、角度4で再試行して再度呼び出します。

  22. 22

    クラスが呼び出された後、初期化でメソッドを実行します

  23. 23

    Hystrix は、バックエンド API が実行されても、fallbackMethod を呼び出します

  24. 24

    takeWhile演算子が「false」を返した後もRXJSタイマーは実行を継続します

  25. 25

    .resumeは、他のデリゲートメソッドを呼び出した後に実行されます

  26. 26

    呼び出されたプログラムが例外をスローした場合、Windowsタスクは実行を続けますか?

  27. 27

    アプリを呼び出すターミナルを閉じた後もアプリを実行し続ける方法はありますか?

  28. 28

    PHP PHPSESSIDは、session_name(***)を呼び出した後も存続します

  29. 29

    捕捉されなかったSIGINT(ターミナルからCtrl-C)を受信した後も、プロセスは実行を継続します

ホットタグ

アーカイブ