JavaScript TrafficLights图像更改不工作
我正在学校做一个调查项目,我需要用JavaScript制作交通灯。我有一个交通灯不同阶段的PNG图像,我想在点击按钮时在它们之间切换。这是我写的,但我似乎找不到任何错误。这是我第一次使用JavaScript,而且有时间限制。请尽快回复 多谢各位JavaScript TrafficLights图像更改不工作,javascript,Javascript,我正在学校做一个调查项目,我需要用JavaScript制作交通灯。我有一个交通灯不同阶段的PNG图像,我想在点击按钮时在它们之间切换。这是我写的,但我似乎找不到任何错误。这是我第一次使用JavaScript,而且有时间限制。请尽快回复 多谢各位 <!DOCTYPE html> <html> <body> <script> var lights = [ "Assets/TrafficLight1
<!DOCTYPE html>
<html>
<body>
<script>
var lights = [
"Assets/TrafficLight1.png",
"Assets/TrafficLight2.png",
"Assets/TrafficLight3.png",
"Assets/TrafficLight4.png"
];
var i = 0;
function ChangeLights() {
document.getElementById("TrafficLight1").src = lights[i];
if (i = 4) {
i = 0;
} else {
i = i + 1;
}
}
</script>
<button onclick="ChangeLights()">Click To Change</button>
<img src ="Assets/TrafficLight1.png" alt="trafficlight" name="TrafficLight1" width ="200" height= "400" id="TrafficLight1">
</body>
</html>
var灯=[
“Assets/TrafficLight1.png”,
“Assets/TrafficLight2.png”,
“资产/交通灯3.png”,
“资产/交通灯4.png”
];
var i=0;
函数ChangeLights(){
document.getElementById(“TrafficLight1”).src=lights[i];
如果(i=4){
i=0;
}否则{
i=i+1;
}
}
单击以更改
此处:
if (i = 4) {
这是不正确的,因为它将4赋值给i,所以它总是正确的-4是真实值。使用==
:
if (i === 4) {
这是因为您使用的if逻辑比较错误 如果(i=4){ 到
如果(i==4){
因此,使用一(1)(=)个符号将变量设置为值
使用两(2)(==)进行比较
使用三(3)(==)可以进行直接比较。非常感谢,我没有意识到这是一个如此简单的修复:D