[英]How to set one minute counter in javascript?
在我的項目中,我有問題列表,每個問題都有三個選項答案。
看到問題后,如果我想回答該問題,則表示單擊“顯示答案”按鈕。 當我單擊按鈕時,計數器會在一分鍾后開始一分鍾,錯誤將顯示。
有人可以幫忙嗎?
你可以使用這樣的東西:
function gameLost() {
alert("You lose!");
}
setTimeout(gameLost, 60000);
更新:將函數引用傳遞給setTimeout()
而不是代碼字符串(我真的是這樣寫的嗎?O_o)
編輯
也顯示計時器(改進版,也感謝 davin):
<button onclick="onTimer()">Clickme</button>
<div id="mycounter"></div>
<script>
i = 60;
function onTimer() {
document.getElementById('mycounter').innerHTML = i;
i--;
if (i < 0) {
alert('You lose!');
}
else {
setTimeout(onTimer, 1000);
}
}
</script>
......
function timedOut() {
alert("Some error message");
}
// set a timer
setTimeout( timedOut , 60000 );
這基本上設置了一個計時器,它將在 60.000 毫秒 = 60 秒 = 1 分鍾后執行給定的功能
編輯:這是一個快速、不完美的小提琴,它也顯示了倒計時http://jsfiddle.net/HRrYG
function countdown() {
var seconds = 60;
function tick() {
var counter = document.getElementById("counter");
seconds--;
counter.innerHTML = "0:" + (seconds < 10 ? "0" : "") + String(seconds);
if( seconds > 0 ) {
setTimeout(tick, 1000);
} else {
alert("Game over");
}
}
tick();
}
// start the countdown
countdown();
你會想要使用 setTimout 函數查看這篇文章。 https://developer.mozilla.org/En/Window.setTimeout請記住計時器以毫秒為單位,因此一分鍾是 60,000。
// 這是一個薄荷計數器的最簡單方法。這也用於 angular 和 oops
var i=60;
function coundown(){
setInterval(() => {
if (this.i == 0) {
return;
}
console.log(this.i--);
}, 1000);
}
// 這個函數可以在 otp 到來或表單提交等待 otp 倒計時時調用
function countdown() { var seconds = 59; function tick() { var counter = document.getElementById("counter"); seconds--; counter.innerHTML = "0:" + (seconds < 10 ? "0" : "") + String(seconds); if (seconds > 0) { setTimeout(tick, 1000); } else { document.getElementById("verifiBtn").innerHTML = ` <div class="Btn" id="ResendBtn"> <button type="submit">Resend</button> </div> `; document.getElementById("counter").innerHTML = ""; } } tick(); } countdown();
<div class="btnGroup"> <span class="Btn" id="verifiBtn"> <button type="submit">Verify</button> </span> <span class="timer"> <span id="counter"></span> </span> </div>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.