【问题标题】:I cannot get my traffic light sequence to work in html [closed]我无法让我的红绿灯序列在 html 中工作 [关闭]
【发布时间】:2017-04-03 08:51:28
【问题描述】:

在我的 a452 计算课程中,我正在尝试使用按钮更改图像以表示 I 交通灯序列。

我可以显示我的第一张图片,但图片不会改变。在我的序列中,我有交通灯的图片,但无法显示。

当我运行它时,第一张图片被加载,但它不会加载任何其他图像

在我的 a452 计算中,我尝试使用按钮更改图像以表示我的交通灯序列。我可以显示我的第一张图片,但图片不会改变,请帮忙。这是我的代码:

<!DOCTYPE html> 
<html> 
    <body> 
       <script> 
         var TLassets = ["Red.png","Redamber.png","Green.png","Amber.png"] 
         var count=0 
         function TL(){
          if(count<3){
            count=count+1
            document.getElemenybyId('lights').src=TLassets[count]; 
          }else{ 
            count=0 
            document.getElemenybyId('lights').src=TLassets[count]; 
          } 
        </script> 
        <center>
          <img id="lights" src='Red.png' ;>
        </center> 
        <center>
          <input type="button" id="change" value="change lights" onclick=TL()>
        </center> 
    </body>
</html>

【问题讨论】:

  • 这里是代码

标签: javascript html arrays traffic


【解决方案1】:

区分大小写的问题:document.getElementById('lights'); (注意粗体字母,“b”大写)。

如果您是新手,我建议您将代码分成“步骤”。我做了一些修改,检查一下,它对我有用。我添加了控制台打印以澄清。

    <script>
    var count = 0;
    function TL() {
      var TLassets = ["Red.png", "yellow.png", "Green.png"];
      count++
        if (count < 3) {
          console.log(count);
          console.log(TLassets[count])
          var edit_picture =  document.getElementById('lights');
          edit_picture.src = TLassets[count];
        } else {
          count = 0;
          console.log(count);
          console.log(TLassets[count])
          var edit_picture =  document.getElementById('lights');
          edit_picture.src = TLassets[count];
        }
      }
    </script>

【讨论】:

    【解决方案2】:

    您的代码中有语法错误,请检查控制台! 修复它们后,脚本就可以工作了:getElemenybyId 不正确。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-29
      • 1970-01-01
      相关资源
      最近更新 更多