一、JS倒計時10秒按鈕
倒計時10秒是我們在日常開發中常見的需求之一。比如,在某些場景下需要讓用戶限定在10秒內進行操作,那麼我們就可以通過實現JS倒計時來實現。以下是一個簡單的例子,實現了倒計時10秒的功能。
//HTML部分
<button onclick="countdown(10)">倒計時10秒</button>
//JS部分
function countdown(time) {
var btn = document.getElementsByTagName("button")[0];
btn.disabled = true;
btn.style.background = "#ccc";
var timer = setInterval(function() {
time--;
btn.innerHTML = "倒計時" + time + "秒";
if (time === 0) {
clearInterval(timer);
btn.disabled = false;
btn.style.background = "";
btn.innerHTML = "重新發送";
}
}, 1000);
}
當點擊按鈕時,倒計時會開始,按鈕的disabled屬性會被賦值為true,防止多次點擊;同時,按鈕的背景顏色也會變灰,以給用戶一個倒計時時間內無法操作的提示。每一秒鐘,時間會減去1s,直到時間為0時,計時器會被清除,按鈕的disabled屬性被解除,背景顏色被恢復成默認狀態,同時按鈕顯示「重新發送」。
二、JS倒計時10秒再點擊按鈕
有時候,用戶可能沒有在倒計時時間內完成操作,但是我們又不希望用戶等待完整的倒計時時間,可以添加一個再次點擊按鈕的功能。即,在倒計時過程中,如果再次點擊按鈕,則重新開始一個倒計時。
//HTML部分
<button onclick="countdownTwo(10)">倒計時10秒再次點擊</button>
//JS部分
var timerTwo;
function countdownTwo(time) {
var btn = document.getElementsByTagName("button")[0];
btn.disabled = true;
btn.style.background = "#ccc";
clearInterval(timerTwo);
timerTwo = setInterval(function() {
time--;
btn.innerHTML = "倒計時" + time + "秒";
if (time === 0) {
clearInterval(timerTwo);
btn.disabled = false;
btn.style.background = "";
btn.innerHTML = "重新發送";
}
}, 1000);
}
這裡增加了一個clearInterval函數,用於在再次點擊按鈕時清除上一個計時器。這樣,即使用戶在倒計時時間內再次點擊了按鈕,也不會出現計時器重疊或多次點擊的問題。
三、JS倒計時10秒代碼
實現倒計時的核心代碼如下:
var timer;
function countdown(time) {
var btn = document.getElementsByTagName("button")[0];
btn.disabled = true;
btn.style.background = "#ccc";
clearInterval(timer);
timer = setInterval(function() {
time--;
btn.innerHTML = "倒計時" + time + "秒";
if (time === 0) {
clearInterval(timer);
btn.disabled = false;
btn.style.background = "";
btn.innerHTML = "重新發送";
}
}, 1000);
}
倒計時時間是通過設置time來實現的,同時用setInterval函數來循環執行倒計時操作。每一秒鐘,time減去1s,同時修改按鈕的innerHTML,直到time倒計時結束。
四、JS倒計時10秒可暫停
在某些情況下,倒計時時間可能較長,需要給用戶提供暫停功能。以下是一個實現倒計時暫停的例子:
//HTML部分
<button onclick="stopCountdown()">暫停</button>
<button onclick="resumeCountdown()">恢復</button>
<button onclick="resetCountdown(10)">重置</button>
//JS部分
var timer;
var time;
function countdown(timeOut) {
time = timeOut;
var btn = document.getElementsByTagName("button")[0];
btn.disabled = true;
btn.style.background = "#ccc";
clearInterval(timer);
timer = setInterval(function() {
time--;
btn.innerHTML = "倒計時" + time + "秒";
if (time === 0) {
clearInterval(timer);
btn.disabled = false;
btn.style.background = "";
btn.innerHTML = "重新發送";
}
}, 1000);
}
function stopCountdown() {
clearInterval(timer);
}
function resumeCountdown() {
timer = setInterval(function() {
time--;
var btn = document.getElementsByTagName("button")[0];
btn.innerHTML = "倒計時" + time + "秒";
if (time === 0) {
clearInterval(timer);
btn.disabled = false;
btn.style.background = "";
btn.innerHTML = "重新發送";
}
}, 1000);
}
function resetCountdown(timeOut) {
clearInterval(timer);
time = timeOut;
var btn = document.getElementsByTagName("button")[0];
btn.innerHTML = "倒計時" + timeOut + "秒";
btn.disabled = false;
btn.style.background = "";
}
這裡增加了三個新的函數,分別是暫停、恢復和重置。當執行暫停操作時,需要清除計時器;恢復操作時,需要重新調用倒計時函數;重置操作時,需要清除計數器、重新設置計時時間和按鈕狀態。
五、JS倒計時10秒廣告代碼
倒計時廣告是在某些場景下經常使用的一種形式。比如廣告倒計時、秒殺活動等。以下是一個倒計時廣告的實現例子:
//HTML部分
<div id="ad">
<img src="ad.jpg">
<div id="countdown">10秒後跳過</div>
</div>
//JS部分
var timer;
var timeout = 10;
function countdown() {
var countdownBox = document.getElementById("countdown");
timer = setInterval(function() {
timeout--;
if (timeout === 0) {
clearInterval(timer);
ad.style.display = "none";
}
countdownBox.innerHTML = timeout + "秒後跳過";
}, 1000);
}
var ad = document.getElementById("ad");
ad.onclick = function() {
ad.style.display = "none";
clearTimeout(timer);
}
countdown();
假設我們有一個廣告盒子,我們在廣告盒子內部放置一張圖片ad.jpg,並在盒子下方放置了一個計時器。當點擊廣告時,廣告會被隱藏,計時器也會被清除。如果用戶沒有在10秒內點擊廣告,則廣告會在10秒後自動隱藏。
六、JS倒計時10秒刷新二維碼
二維碼是我們日常生活中常見的一種形式,使用倒計時功能可以實現自動刷新二維碼的效果。以下是一個刷新二維碼的例子:
//HTML部分
<div id="qrcode"></div>
<button onclick="refresh()">刷新二維碼</button>
//JS部分
var qrcode = new QRCode("qrcode");
function refresh() {
qrcode.clear(); //清除QRCode
qrcode.makeCode("new content"); //重新生成QRCode
countdown(10); //開始倒計時
}
這裡使用了QRCode.js庫來生成二維碼,當點擊刷新按鈕時,會先清除當前的QRCode,並重新生成一個新的QRCode。同時,開始倒計時10秒。
七、JS倒計時10秒提交按鈕
有時候,在一些關鍵操作場景下,我們需要防止多次提交,可以通過倒計時來實現。以下是一個防止多次提交的案例。
//HTML部分
<button id="submit">提交</button>
//JS部分
var submitting = false; //是否正在提交
var timer;
var time = 10;
var btn = document.getElementById("submit");
btn.onclick = function() {
if (!submitting) {
submitting = true;
btn.disabled = true;
btn.style.background = "#ccc";
clearInterval(timer);
timer = setInterval(function() {
time--;
btn.innerHTML = "倒計時" + time + "秒";
if (time === 0) {
clearInterval(timer);
submitting = false;
btn.disabled = false;
btn.style.background = "";
btn.innerHTML = "提交";
time = 10;
}
}, 1000);
}
}
當開始提交時,submitting變量被賦值為true,並禁用按鈕。同時,開啟一個10秒的倒計時。如果倒計時完成後,submitting變量被賦值為false,同時啟用按鈕,並將按鈕狀態回歸初始狀態。如此,我們可以進行多次提交,並通過倒計時來避免多次提交問題。
八、JS倒計時10秒代碼實驗報告
綜上所述,JS倒計時10秒是我們日常開發中經常需要實現的功能,其實現方法可以有很多種,以上通過代碼示例的方式闡述了倒計時10秒的基本實現方式,以及場景應用。總而言之,倒計時10秒是一種非常實用的交互方式,可以幫助我們完成很多常見的交互效果。
九、JS倒計時60秒頁面顯示
如果需要實現60秒倒計時,只需要簡單地改變一下time的值即可。在HTML部分,需要簡單地修改一下按鈕文字即可。
//HTML部分
<button onclick="countdown(60)">倒計時60秒</button>
//JS部分
function countdown(time) {
var btn = document.getElementsByTagName("button")[0];
btn.disabled = true;
btn.style.background = "#ccc";
var timer = setInterval(function() {
time--;
btn.innerHTML = "倒計時" + time + "秒";
if (time === 0) {
clearInterval(timer);
btn.disabled = false;
btn.style.background = "";
btn.innerHTML = "重新發送";
}
}, 1000);
}
以上僅是一個簡單的例子,其他實現方式也可以根據需要靈活調整。
十、嵌入式倒計時10秒代碼
在某些場景下,我們需要在一個網頁或者應用中嵌入一個倒計時功能,以下是一個實現嵌入式倒計時的例子。
//HTML部分
<div id="countdown"></div>
//JS部分
var timeout = 10;
var countdownBox = document.getElementById("countdown");
var timer = setInterval(function() {
timeout--;
if (timeout === 0) {
clearInterval(timer);
countdownBox.innerHTML = "倒計時結束";
} else {
countdownBox.innerHTML = "倒計時" + timeout + "秒";
}
}, 1000);
以上代碼會在頁面中嵌入一個countdown的div,用於顯示倒計時時間。通過setInterval函數,每隔1秒鐘減去一秒鐘的時間,直到倒計時結束。同時,根據倒計時的時間來修改倒計時內容。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/233627.html
微信掃一掃
支付寶掃一掃