私は60秒で答えられるように10の質問でJavascriptタイムクイズを作成しています。競技者が50〜60秒で質問を試みるとうまくいきますが、短い時間で試してクイズを再開すると、タイマーは2倍のスピードで動作します。以前のタイマーがクリアされていない可能性があります。ここでのスクリプトは次のとおりです。setIntervalをキャンセルできません
$(window).ready(function() {
$('#fblock').hide();
$('#sblock').show();
$('#qblock').hide();
$('.startquiz').click(function() {
qsi = 0;
score = 0;
showq(0);
$('#fblock').hide();
$('#sblock').hide();
$('#qblock').show();
var secs = 0;
var id = setInterval(function() {
secs++;
console.log(secs);
document.getElementById("timer").innerHTML++;
if (secs > 60) {
clearInterval(id);
$('#result').html(score);
$('#qblock').hide();
$('#fblock').show();
}
}, 1000);
});
$('.restartquiz').click(function() {
$('#fblock').hide();
$('#sblock').show();
$('#qblock').hide();
document.getElementById("timer").innerHTML = 0;
});
});
私が行方不明 '}を追加しました);'コードの末尾に、http://jsbeautifier.orgを通してそれを通過し、あなたのために上記の投稿に正しくマークアップしてください。 –
ありがとう、私はあなたがそれをフォーマットしている間に編集に苦労していました。 – DKumar