2017-04-03 9 views
-4

私のa452コンピューティングクラスでは、Iトラフィックライトシーケンスを表すボタンでイメージを変更しようとしています。トラフィックライトシーケンスをhtmlで動作させることができません

私は最初の写真を表示できますが、写真は変更されません。私の順序では、私は交通信号の写真を持っていますが、表示することはできません。私はそれを実行したときに

最初の画像がロードされますが、それは私が私の交通ライト・シーケンスを表すためにボタンで画像を変更しようとしている私の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>

+0

ここでは、コード –

+0

<!DOCTYPE HTML>

答えて

2

大文字と小文字が区別される問題:document.getElement B yId( '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> 
0

あなたはあなたのコードの構文エラーを持って、コンソールをチェック! 修正したら、スクリプトは動作します:getElemenybyIdが正しくありません。

関連する問題