编写一份JavaScript作品,包括dom,bom,jQuery
时间: 2024-03-23 15:43:09 浏览: 67
h5、css、js、DOM、BOM、jQuery、Ajax
好的,以下是一个简单的 JavaScript 作品,它包括了 DOM 操作、BOM 操作和 jQuery 库的使用。这个作品是一个简单的网页倒计时器,可以设定一个时间,然后倒计时到这个时间并在网页上展示倒计时的进度。
```html
<!DOCTYPE html>
<html>
<head>
<title>网页倒计时器</title>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
</head>
<body>
<h1>网页倒计时器</h1>
<p>设定一个时间,倒计时到这个时间:</p>
<input type="datetime-local" id="countdown-time">
<button onclick="startCountdown()">开始倒计时</button>
<div id="countdown"></div>
<script>
var intervalId;
function startCountdown() {
var countdownTime = new Date($("#countdown-time").val()).getTime();
if (isNaN(countdownTime)) {
alert("请设置一个有效的时间!");
return;
}
intervalId = setInterval(function() {
var now = new Date().getTime();
var distance = countdownTime - now;
if (distance < 0) {
clearInterval(intervalId);
$("#countdown").text("时间到!");
} else {
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);
$("#countdown").text("距离设定时间还有:" + days + " 天 " + hours + " 小时 " + minutes + " 分钟 " + seconds + " 秒");
}
}, 1000);
}
</script>
</body>
</html>
```
这份代码中包含一个输入框和一个按钮,用户可以在输入框中设定一个时间,点击按钮后就会触发 `startCountdown()` 函数开始倒计时。在这个函数中,我们首先使用 jQuery 库的 `$()` 函数获取输入框的值,并使用 `new Date()` 函数将其转换为一个 JavaScript Date 对象。如果用户没有设置有效的时间,我们则使用 `alert()` 函数弹出警告框。
然后我们使用 `setInterval()` 函数开启一个定时器,每秒钟执行一次函数。在这个函数中,我们首先获取当前时间,计算还有多少时间需要倒计时。如果距离设定时间已经过了,我们停止定时器并在网页上展示倒计时结束的信息;否则,我们计算还有多少天、小时、分钟和秒钟需要倒计时,并将其展示在网页上。
在这个过程中,我们使用了 BOM 的 `setInterval()` 函数实现定时器和 DOM 操作来展示倒计时的进度。同时,我们也使用了 jQuery 库的 `$()` 函数简化了获取输入框的值和展示倒计时的进度。
阅读全文