首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >javascript和html交通灯不工作

javascript和html交通灯不工作
EN

Stack Overflow用户
提问于 2016-12-01 04:24:22
回答 3查看 203关注 0票数 0

所以红绿灯亮了,当下一个红绿灯按钮被按下时,红绿灯不会改变,我永远也找不到原因。如果有任何帮助,我将不胜感激。代码如下:

代码语言:javascript
复制
<!DOCTYPE html>
<html>
  <body>

    <img id="thestartlight" src="file:\\\C:\Users\Sony\Desktop\Amul's USB\IT\it test\traffic-light-red.jpg">

    <button type="button" onclick="nextLightClick()">Next Light</button>

    <script>
      var list = [
        "file:\\\C:\Users\Sony\Desktop\Amul's USB\IT\it test\traffic-light-red.jpg.html"
        "file:\\\C:\Users\Sony\Desktop\Amul's USB\IT\it test\traffic-light-amber.jpg",
        "file:\\\C:\Users\Sony\Desktop\Amul's USB\IT\it test\traffic-light-green.jpg",
        "file:\\\C:\Users\Sony\Desktop\Amul's USB\IT\it test\traffic-light-red.jpg"
      ];

      var index = 0;
      var lightsLen = lights.length;

      function nextLightClick() {
        index++;

        if (index == lightsLen) 
          index = 0;

        var image = document.getElementById('thestartlight');
        image.src = lights[index];
      }
    </script>
  </body>
</html>
EN

回答 3

Stack Overflow用户

发布于 2016-12-01 04:30:32

有3个问题。

1)它的list必须是lights

2)最好将图片放到相对于你的代码文件夹的images/lights/文件夹中。

3) html文件无法在图片标签中显示

修复方法如下:

代码语言:javascript
复制
var lights = [ 
   "images/lights/amber.jpg", 
   "images/lights/green.jpg", 
   "images/lights/red.jpg"
]; 
var index = 0; 
var lightsLen = lights.length; 
票数 1
EN

Stack Overflow用户

发布于 2016-12-01 04:30:57

这是一个打字错误。

代码语言:javascript
复制
 var list = [ ...

应该是

代码语言:javascript
复制
 var lights [ ...
票数 0
EN

Stack Overflow用户

发布于 2016-12-01 04:31:48

您将数组命名为list,但您正在从lights中查找映像。

您还需要从数组中删除.html文件。

代码语言:javascript
复制
var image = document.getElementById('thestartlight');


var lights = [
"http://archive.nassaucountyny.gov/agencies/TPVA/Images/RedLight-2_145x193.jpg",
"http://www.clker.com/cliparts/2/1/1/6/N/W/amber-traffic-light.svg",
"http://www.clker.com/cliparts/6/e/9/d/11949849761176136192traffic_light_green_dan__01.svg"
];

var index = 0;
var lightsLen = lights.length;

function nextLightClick() {
   index++;

  if (index == lightsLen){ 
      index = 0;
  }

  image.src = lights[index];
}
代码语言:javascript
复制
img {width:50px;}
代码语言:javascript
复制
<img id="thestartlight" src="http://archive.nassaucountyny.gov/agencies/TPVA/Images/RedLight-2_145x193.jpg">

<button type="button" onclick="nextLightClick()">Next Light</button>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40897506

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档