🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

2回答

1447閲覧

JavaScriptで画像をランダム表示

emukokoro

総合スコア9

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2019/11/11 11:50

JavaScriptで画像をランダム表示したい

JavaScript初心者です。
ボタンを押すと用意した画像をランダムに表示できるようにしたいのですが、
以下のエラーメッセージが発生しました。

発生している問題・エラーメッセージ

Failed to load resource: net::ERR_FILE_NOT_FOUND

該当のソースコード

JavaScript

1<!DOCTYPE html> 2<html> 3<head> 4 <title></title> 5 <link rel="stylesheet" href="style.css"> 6</head> 7 <body> 8 <div id="container"> 9 <h1>Today's Anne Hathaway</h1> 10 11 <div id="disp"> 12 13 <img src="anne-1.png"> 14 15 </div> 16 17 <button id="btn">touch me!</button> 18 </div> 19 20 21 <script type="text/javascript"> 22 var disp = document.getElementById("disp"); 23 var btn = document.getElementById("btn"); 24 25 var img = ["anne-1.png","anne-2.png","anne-3.png","anne-4.png"]; 26 var num = 0; 27 28 29 btn.addEventListener('click', function(){ 30 31 var num = Math.floor(Math.random()*img.length); 32 disp.innerHTML = "<img src=”img[num]”>"; 33 34 }) 35 36 </script> 37 38 </body> 39</html>

試したこと

エラーコードをググって、
1:Chromeのキャッシュを削除
2:ファイルをコピーして、元のファイルを削除
3:Chromeを起動
4:コピーしたファイルを元の場所に戻して再度Chromeで確認

ということを試しましたが解決しませんでした。

###補足
画像はファイルと同じフォルダ内にあります。
ボタンを押すと画像マークは出るのですが、
画像そのものは表示されません。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

javascript

1disp.innerHTML = "<img src=”img[num]”>";

これの上の行か下の行に、

javascript

1console.log("<img src=”img[num]”>");

を追加してみて、出力内容を見てみてください。
あなたが disp.innerHTML に設定したい値と出力内容は一致していますか?

投稿2019/11/11 12:07

2KOH

総合スコア999

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

emukokoro

2019/11/11 12:19

ありがとうございます! ファイル名になってしまってたのですね???? ぜんぜん気が付きませんでした。
guest

0

ベストアンサー

”img[num]”というファイル名の画像を表示しようとしています。

js

1// disp.innerHTML = "<img src=”img[num]”>"; 2// ↓ 半角 ↓ 半角 3 disp.innerHTML = '<img src="' + img[num] + '">'; 4// ↑ 変数をテキストとして連結

投稿2019/11/11 12:09

kei344

総合スコア69596

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

emukokoro

2019/11/11 12:21

ありがとうございます!!! 変数をテキストにする方法なんて想像もしませんでした!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問