0

訪問者が[送信]をクリックしたときにコーディングしたかったのですが、そのサイトにリダイレクトされるまでのカウントダウン時間が表示されます。

以下はデモです

http://jsfiddle.net/VJT9d/17/

これはhtmlコードです:

<input id="hulk" class="submit" name="send_contact" type="submit" value="Send" />

<div style="display:hidden">Redirecting In <span id="countdown">5</span>.</div>

およびjqueryコード:

var timer = 5,
el = document.getElementById('countdown');

$('#hulk').click(function t_minus() {
'use strict';
el.innerHTML = timer--;
if (timer >= 0) {
    setTimeout(function () {
        t_minus();
    }, 1000);
} else {
    window.location.replace("/");
}
}());

[送信]をクリックした後にのみカウントダウンタイマーを表示するにはどうすればよいですか?

4

3 に答える 3

2

最後に持っているものを削除する()だけです。

var timer = 5,
    el = document.getElementById('countdown');

$('#hulk').on( 'click', function t_minus() {
    'use strict';
    el.innerHTML = timer--;
    if (timer >= 0) {
        setTimeout(function () {
            t_minus();
        }, 1000);
    } else {
        window.location.replace("/");
    }
});

更新されたフィドル

于 2013-03-25T07:45:29.100 に答える
0

使用する

$('#countdown')。show()

クリック機能の内部。

于 2013-03-25T07:47:48.050 に答える
0

クリック後にのみメッセージを表示するには、2つのことが必要です。まず、適切なスタイルで要素を適切に非表示にし、次に、最後の行でt_minus関数を起動しないでください。

解決

var timer = 5,

el = document.getElementById('countdown');
$('#hulk').click(function t_minus() {
'use strict';
el.innerHTML = timer--;
if (timer >= 0) {
    setTimeout(function () {
    t_minus();
    }, 1000);
} else {
    window.location.replace("/");
}
});

CSSを使用して要素を非表示にする方法もお読みください

于 2013-03-25T08:00:54.023 に答える