0

フェードアウトして 2 秒間ボタンを非表示にし、2 秒後にフェードインして再表示したいと思います。

JavaScriptとCSSでそれを作成する方法を知っている人はいますか? 私は JS の専門家ではありません。

4

3 に答える 3

3

これはあなたが望むことをしますが、スパムの問題を解決しないとは思わないでください:

<input type='submit' onclick='$(this).fadeOut().delay(2000).fadeIn()'/>
于 2013-02-22T19:04:28.070 に答える
0

onclick機能を実行し、すべてをjavascriptコードで保持するには:

<input id='button' value='Button Text'>
<script language='javascript'>
$(function() {
  $('#button').click(function(){
    $(this).fadeOut('slow',function() {
      setTimeout('$(this).fadeIn("slow");',2000);
    });
  });
});
</script>

編集:おそらく、単純なフェードイン/アウトの代わりにボタンを無効にする必要があります-私が働いている会社では、「処理中」のテキストを変更するだけで、ユーザーはボタンのピリオドを再度クリックできません(戻ってこない)。

于 2013-02-22T19:10:19.433 に答える
0

これにより、ボタンがゆっくりとフェードアウトし、フェードアウトが完了すると、再びフェードインするまで 2 秒待機します。これはスパムを防止する効果的な方法ではないことに注意してください。ボタンは 2 秒間「非表示」になっていますが、実際にはフォームが非アクティブ化されるわけではありません。スパマーが自動化されたプログラムを使用してフォームに入力して送信した場合、ボタンを非表示にするスタイルを設定しても、これを防ぐことはできません。ただし、証明として、以下のコードを自由に使用してください。

<input id="submitBtn" type="submit" value="Submit my form!"/>
<script type="text/javascript">
    $("#submitBtn").fadeOut('slow',function(){
        setTimeout('$("#submitBtn").fadeIn("slow");',2000);
    });
</script>
于 2013-02-22T19:06:16.463 に答える