5

ボタンをすばやくクリックすると、jQuery コードで問題が発生します。したがって、これを解決するには、ユーザーが 2 秒ごとにボタンをクリックできるようにする必要があります。2 秒ごと (または選択した時間) にのみボタンをクリックできるようにするにはどうすればよいですか?

4

3 に答える 3

13

<button>またはを使用していると仮定すると<input>

$('#yourButton').click(function(){
    var btn = $(this);
    btn.prop('disabled',true);
    window.setTimeout(function(){ 
        btn.prop('disabled',false);
    },2000);
});

jsFiddle デモ

ボタンが再度有効になるまでのミリ秒単位の2000時間です。

于 2012-07-11T17:26:35.573 に答える
1

「クリック」ハンドラーにクラスをボタンに追加させ (おそらく「クリック」)、タイマーを開始して 2 秒後にクラスを削除します。「クリック」がすでにボタンに適用されていることをハンドラーが認識した場合、ハンドラーは何もしません。

ボタンを無効にすることもできます。ボタンが何もしないことをユーザーに視覚的に示すので、その方が良いかもしれません。

于 2012-07-11T17:25:35.293 に答える
1

クリック時にボタンを無効にし、有効期限が切れたときにボタンを再度有効にする 2 秒のタイムアウトでタイマーを実行します。

于 2012-07-11T17:25:42.143 に答える