2016-09-11 1 views
-2

私はHTMLとJavaScriptの完全な初心者です。私は問題に遭遇しました。私がボタンを持っているとonclickの下で、私が持っている:JavaScript変数の画像は値が期待されていません

onclick="document.getElementById('slideCurrent').src=images[1]" 

とJavaScriptの部分で、私が持っている:

var images = [ 
    "PATH BLABLABLA_1", 
    "PATH BLABLABLA_2", 
    "PATH BLABLABLA_3" 
]; 

何らかの理由により、画像が表示されません。しかし、そこに直接パスを入れると、正常に動作します。

私が望むのは、適切なイメージが配列インデックスに基づいて表示されることです。何らかの理由で、コンソールは、パスが間違っていることを私に語っている:
Failed to load resource: net::ERR_FILE_NOT_FOUND

をここでより完全なコードです:

<img id="slideCurrent" 
     src="file:///C:/Users/philip/Desktop/htmlCSA_files/CSA_InfoGuide_TUTORIALSLIDE1.png" 
     width="500" 
     height="333"/> 

    <input type="image" 
      id="arrowCircularRight" 
      src="file:///C:/Users/philip/Desktop/htmlCSA_files/arrowCircular_right.png" 
      onclick="document.getElementById('slideCurrent').src=images[1]" 
      width="50" 
      height="50"/> 
    <script> 
    var images = [ 
     "file:///C:/Users/philip/Desktop/htmlCSA_files/CSA_InfoGuide_TUTORIALSLIDE1.png", 
     "file:///C:/Users/philip/Desktop/htmlCSA_files/CSA_InfoGuide_TUTORIALSLIDE2.png", 
     "file:///C:/Users/philip/Desktop/htmlCSA_files/CSA_InfoGuide_TUTORIALSLIDE3.png", 
     "file:///C:/Users/philip/Desktop/htmlCSA_files/CSA_InfoGuide_TUTORIALSLIDE4.png", 
     "file:///C:/Users/philip/Desktop/htmlCSA_files/CSA_InfoGuide_TUTORIALSLIDE5.png" 
    ]; 

</script> 
+0

コンソールですべてのエラーを取得していますか? – Li357

+0

コンソールはどこにありますか? –

+0

私の間違いを心配しないでください。コンソールは 'リソースを読み込めませんでした:net :: ERR_FILE_NOT_FOUND'を返し、' bla/bla/bla/undefined'に続きます。 –

答えて

1

問題は、変数名のあなたの選択です。変数imagesdocument.imagesと競合します。別の変数名を使用すると、それは動作します。

以下は、スニペット内のコードです(少し修正されています)。テストのために、画像URLをStack Overflowで有効なURLに変更し、<img>のサイズを調整し、クリックする画像を説明する行を追加しました。変数名をimagesからmyImagesに変更しました。

<img id="slideCurrent" src="http://i.stack.imgur.com/jy5g5.png"/> 
 

 
<p>Click the image below to change the one above this line (only changes once)</p> 
 

 
<input type="image" 
 
    id="arrowCircularRight" 
 
    src="http://i.stack.imgur.com/wRMuO.png" 
 
    onclick="document.getElementById('slideCurrent').src=myImages[1];" 
 
    width="50" 
 
    height="50"/> 
 

 
<script> 
 
    var myImages = [ 
 
     "http://i.stack.imgur.com/jy5g5.png", 
 
     "http://i.stack.imgur.com/S33VZ.png" 
 
    ]; 
 
</script>

+0

これは完璧に機能しました!手伝ってくれてどうもありがとう! :-) –

関連する問題