私はjqueryのプロではありませんが、10秒のタイマーで別のdivをクリックした後、divを表示する簡単なコードを作成しました。
これは私のコードです:
$(document).ready(function() {
$('.link').click(function() {
$('#my-timer').fadeIn('slow');
var settimmer = 0;
$(function(){
setInterval(function() {
var timeCounter = $("b[id=show-time]").html();
var updateTime = eval(timeCounter)- eval(1);
$("b[id=show-time]").html(updateTime);
if(updateTime == 0){
$('#my-timer').hide();
$('.download').fadeIn('slow');
}
}, 1000);
});
});
$(".download").hide();
$("#my-timer").hide();
});
HTML:
<div class="link">Link</div>
<div class="download">Download</div>
<div style="display:none" id="my-timer">Page Will Redirect with in <b id="show-time">10</b> seconds<br />
</div>
デモ: http: //jsfiddle.net/vuJZX/
私の問題は:
1:初めてリンクをクリックすると、すべて問題ありませんが、このタイマーを1回だけ表示する必要があります。デモでは、10秒ごとに、[リンク]をクリックするとタイマーが開始され、次のようにカウントされます。-1、-2、-3、-4...10秒後にこのタイマーを停止して無効にする方法秒?10秒後にタイマーを無効にする必要があります。
2:このタイマーを10秒間表示する必要がありますが、リンクワードを3〜4回クリックすると、タイマーが高速に動作します。私の問題はタイマーの速度だと思います!この問題をどのように説明できるかわかりませんが、デモリンクで試すことができます。リンクを4〜5回クリックして、タイマーを確認してください。
そして私の最後の質問ですが、私のコードが標準であるかどうかはわかりません。コードを変更する必要がありますか、それとも正しいですか?
ありがとう