jQuery 是一个快速、小巧且功能丰富的 JavaScript 库,它简化了 HTML 文档遍历、事件处理、动画和 Ajax 交互。倒计时是一种常见的功能,用于显示从当前时间到未来某个特定时间的剩余时间。
以下是一个使用 jQuery 实现多倒计时的示例代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>jQuery 多倒计时</title>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
</head>
<body>
<div id="countdown1">倒计时1: </div>
<div id="countdown2">倒计时2: </div>
<script>
function updateCountdown(elementId, endTime) {
var interval = setInterval(function() {
var now = new Date().getTime();
var distance = endTime - now;
if (distance < 0) {
clearInterval(interval);
$(`#${elementId}`).text(`${elementId} 已结束`);
return;
}
var days = Math.floor(distance / (1000 * 60 * 60 * 24));
var hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
var minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60));
var seconds = Math.floor((distance % (1000 * 60)) / 1000);
$(`#${elementId}`).text(`${elementId} ${days}天 ${hours}小时 ${minutes}分钟 ${seconds}秒`);
}, 1000);
}
$(document).ready(function() {
var endTime1 = new Date("2023-12-31T23:59:59").getTime();
var endTime2 = new Date("2024-01-01T12:00:00").getTime();
updateCountdown("countdown1", endTime1);
updateCountdown("countdown2", endTime2);
});
</script>
</body>
</html>
setInterval
不够精确。setTimeout
代替 setInterval
,并在每次更新倒计时时重新计算剩余时间。setInterval
仍然会继续运行。setInterval
。通过以上方法,可以有效地实现和管理多个倒计时功能。
领取专属 10元无门槛券
手把手带您无忧上云