私の答えはhereとhereでしたが、そのような単純なプロセスではコードが長すぎることがわかりました。 以下、私のコードは、 'image'を同じファイルにある配列内の異なる.jpgに変更することで、基本的な画像チェンジャーを示しています。理論的にはイメージJavaScriptを使用してボタンを変更する
<!DOCTYPE html>
<html>
<body>
<img id="image" src="blank_light.jpg" style="width:100px">
<p></p>
<button class = "change-image">Change Lights</button>
<script>
var imageSources = ["green_light.jpg", "yellow_light.jpg", "red_and_yellow_light.jpg", "red_light.jpg", "blank_light.jpg"]
var buttons = document.getElementsByClassName("change-image")
for (let i = 0; i < buttons.length; i++) {
buttons[i].onclick = function() {
document.getElementById("image").src = imageSources[i]
}
}
</script>
</body>
</html>
、私はHTML内のスクリプトを埋め込んだので、それは夢のように動作するはずですが、イメージは黄色の光に立ち往生しているようです。リピートボタンのクリックフェーズがありますか?
ありがとうございました。
は1つだけのボタンがあり、あなたはそれをクリックしたときには、最初の画像への画像の 'src'を設定配列( 'green_light.jpg'です)。 – Dekel
複数のボタンがある場合、このコードは意味があります。しかし、クリックごとに配列を調べたいので、少なくとも現在の配列インデックスを格納する変数が必要です。ボタンをクリックすると変数が前進し、それを使って配列からファイル名を取得します。 –
@Dekelは、Chrisが言ったように配列インデックスの変数を作成すること、またはより多くのボタンを作成することをお勧めしますか?もちろん、ボタンを増やすと、見た目が不安定になることがありますが、JSやHTMLの基本的な知識で、誰かが回答として投稿しない限り、私はおそらくインデックスを作るのに苦労します_ *ヒントヒント* _ –