2016-12-28 10 views
-2
<html> 
<body> 


<button onclick="ChangeLights()">Change Lights</button> 

<img src="redlight.jpg" id="traffic" width="83" height="232"> 

<script> 
    var imgarray = ["redlight.jpg", "yellowlight.jpg", "greenlight.jpg"]; 
    document.getElementById("traffic").innerHTML = traffic; 
    function ChangeLights(){ 
     document.getElementById("traffic").src = "redlight.jpg"; 
    } 

    function ChangeLights() { 
     if (traffic.src.match(imgarray[0])){ 
      traffic.src = imgarray[1]; 
     }else if (traffic.src.match(imgarray[1])){ 
      traffic.src = imgarray[2]; 
     }else if (traffic.src.match(imgarray[2])){ 
      traffic.src = imgarray[3]; 
     } 
    } 
</script> 
</body> 
</html> 

ボタンを押すたびにイメージは表示されません。イメージアレイを使用してJavaScriptコードの変更イメージを作成するには

+0

「交通」とは何ですか?あなたは決してそれを定義しなかった。また、 'ChangeLights'関数を2回定義して混乱しています。 – putvande

+0

あなたは正確に何をしたいですか?あなたは、クリックされたボタンに応じて画像を変える機能が必要ですか、またはループ内の画像を変更する機能が必要ですか? –

+0

テストするとうまく動作します。私は問題を再現できません。 – Quentin

答えて

-1

は、画像が右フォルダ内にある、それはあなたのHTMLファイルと同じディレクトリにあるべきことを確認してください。この

<html> 

<body> 
<button onclick="ChangeLights()">Change Lights</button> 
<img src="redlight.jpg" id="traffic" width="83" height="232"> 
<script> 
    var imgarray = ["redlight.jpg", "yellowlight.jpg", "greenlight.jpg"]; 

    function ChangeLights() { 
     if (traffic.src.match(imgarray[0])) { 
      traffic.src = imgarray[1]; 
     } else if (traffic.src.match(imgarray[1])) { 
      traffic.src = imgarray[2]; 
     } else if (traffic.src.match(imgarray[2])) { 
      traffic.src = imgarray[0]; 
     } 
    } 
</script> 

を試してみてください。

+0

コードに問題が残っています... – epascarello

+0

これは、差は答えよりも大きい。 – Quentin

関連する問題