复制粘贴,修改startSet与endHour即可
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<div id="main" class="main">
<header><h1>大型购物秒杀倒计时</h1></header>
<h1 class="count" id="count">
</h1>
</div>
<script>
let startSet = "2020/7/16 18:00:00";
let startTime = new Date(startSet);
let count = document.getElementById('count');
let endHour = 3;
function zero(b) {
return (`00${b}`.slice(b.length, b.length+2))
}
function TimeToEnd(midTime, str) {
let hour = parseInt(midTime/3600);
let minute = parseInt((midTime - hour*3600) / 60);
let second = parseInt(midTime - hour*3600 - minute*60);
let content = `还有 ${zero(hour.toString())}小时${zero(minute.toString())}分${zero(second.toString())}秒 活动${str}!!!`;
return content;
}
setInterval(()=> {
let nowTime = new Date();
let midTime = (startTime.getTime() - nowTime.getTime())/1000;
if(parseInt(midTime/3600) < 24) {
if(midTime < 0) {
let midmidTime = midTime + endHour*3600;
count.innerText = midmidTime > 0 ? TimeToEnd(midmidTime,'结束') : "活动已经结束";
} else {
count.innerText = TimeToEnd(midTime,'开始');
}
} else {
count.innerText = '活动尚未开始, 敬请期待';
}
},1000)
</script>
<style>
* {
margin: 0;
padding: 0;
}
.main {
position: fixed;
width: 100%;
height: 100%;
display: flex;
flex-flow: column;
justify-content: center;
align-items: center;
background-color: red;
background: linear-gradient(red,orange,rgb(255, 238, 0),rgb(255, 251, 0));
}
.count {
display: flex;
flex-flow: column;
justify-content: center;
height: 500px;
}
</style>
</body>
</html>