Javascript實現定時器倒計時,話不多說直接上代碼:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> </head> <body> <p> <span>1</span> <span>2</span> <span>3</span> </p> <script> var hour = document.querySelector('.hour'); //小時的黑色盒子 var minute = document.querySelector('.minute'); //分鐘的黑色盒子 var second = document.querySelector('.second'); //秒數的盒子 var inputTime = +new Date('2021-4-10 23:00:00'); //返回的是用戶輸入的時間總的毫秒數 // 封裝好的計算時間的函數 //先調用一次函數防止開始出現空白 countDown(); //開啟定時器 setInterval(countDown,1000); function countDown() { var nowTime = +new Date(); //返回的是當前時間的走毫秒數 var times = (inputTime - nowTime) / 1000; //times是剩余時間的總數 // var d = parseInt(times / 60 / 60 / 24); //天 // d = d < 10 ? '0' + d : d; var h = parseInt(times / 60 / 60 % 24); //時 h = h < 10 ? '0' + h : h; hour.innerHTML = h; //把剩余的小時給小時黑盒子 var m = parseInt(times / 60 % 60); //當前秒 m = m < 10 ? '0' + m : m; minute.innerHTML = m;//把剩余的分鐘給盒子 var s =parseInt(times%60);//當前秒 s = s < 10 ? '0' + s : s; second.innerHTML = s;//把剩余的秒數給盒子 // return d + '天' + h + '時' + m + '分' + s + '秒'; } </script> </body> </html>
這里封裝了一個時間轉換的函數:
function countDown() { var nowTime = +new Date(); //返回的是當前時間的走毫秒數 var times = (inputTime - nowTime) / 1000; //times是剩余時間的總數 var d = parseInt(times / 60 / 60 / 24); //天 d = d < 10 ? '0' + d : d; var h = parseInt(times / 60 / 60 % 24); //時 h = h < 10 ? '0' + h : h; var m = parseInt(times / 60 % 60); //當前秒 m = m < 10 ? '0' + m : m; var s =parseInt(times%60);//當前秒 s = s < 10 ? '0' + s : s; return d + '天' + h + '時' + m + '分' + s + '秒'; }