js实现交通灯倒计时30秒转灰色功能
时间: 2023-09-05 11:09:12 浏览: 54
可以使用JavaScript的`setTimeout()`函数和DOM操作实现交通灯倒计时30秒转灰色的功能。具体步骤如下:
1. 使用`setTimeout()`函数设置一个30秒的定时器,当定时器到达时,执行一个回调函数。
2. 在回调函数中,使用`document.querySelector()`函数获取到交通灯的DOM元素,然后使用`classList.add()`函数添加一个名为"gray"的CSS类,将交通灯的颜色变为灰色。
下面是一个示例代码:
```html
<!DOCTYPE html>
<html>
<head>
<style>
.red {
background-color: red;
}
.yellow {
background-color: yellow;
}
.green {
background-color: green;
}
.gray {
background-color: gray;
}
</style>
</head>
<body>
<div class="red"></div>
<div class="yellow"></div>
<div class="green"></div>
<script>
// 获取交通灯DOM元素
const redLight = document.querySelector(".red");
const yellowLight = document.querySelector(".yellow");
const greenLight = document.querySelector(".green");
// 定义倒计时函数
function countdown() {
// 30秒后将交通灯变为灰色
setTimeout(() => {
redLight.classList.add("gray");
yellowLight.classList.add("gray");
greenLight.classList.add("gray");
}, 30000);
}
// 调用倒计时函数
countdown();
</script>
</body>
</html>
```
在上面的代码中,我们使用了一个名为"gray"的CSS类来将交通灯变为灰色。在倒计时函数中,我们使用`setTimeout()`函数来设置一个30秒的定时器,当定时器到达时,将交通灯的DOM元素添加"gray"类,使其变为灰色。