質問をすることでしか得られない、回答やアドバイスがある。

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

新規登録して質問してみよう
ただいま回答率
85.48%
JavaScript

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

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

1回答

1643閲覧

HTMLのイメージマップのボタンをクリックするとボタンと紐づいた画像が表示されるようにしたい。

Keichi_Negishi

総合スコア24

JavaScript

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

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2019/12/03 04:52

【jQuery】

jQuery

1$(function(){ 2 $(".area"); 3 $(".fadein_img_wrapper img").hide(); 4 5 //リンクのボタン=i 6 //画像=k 7 $(".area").each(function(i){ 8 console.log(($(this)+i)); 9 $(".fadein_img_wrapper img").each(function(k){ 10 console.log(($(this)+k)); 11 12 $(".area").on("click", function(){ 13 if(k==i){ 14 $(".fadein_img_wrapper img").stop().fadeToggle(); 15 } 16 }); 17 }); 18 }); 19});

【HTML】

HTML

1 <figure> 2<img src="images/factory_1f.jpg" usemap="#ImageMap" alt="工場の見取り図のボタン" /> 3<map name="ImageMap"> 4 <area class="area0 area" shape="circle" coords="40,239,21" alt="工場の見取り図のボタン" /> 5 <area class="area1 area" shape="circle" coords="150,280,20" alt="工場の見取り図のボタン" /> 6 <area class="area2 area" shape="circle" coords="336,310,12" alt="工場の見取り図のボタン" /> 7 <area class="area3 area" shape="circle" coords="343,338,13" alt="工場の見取り図のボタン" /> 8 <area class="area4 area" shape="circle" coords="648,376,12" alt="工場の見取り図のボタン" /> 9 <area class="area5 area" shape="circle" coords="560,243,12" href="#" alt="工場の見取り図のボタン" /> 10 <area class="area6 area" shape="circle" coords="556,159,14" href="#" alt="工場の見取り図のボタン" /> 11 <area class="area7 area" shape="circle" coords="583,119,14" href="#" alt="工場の見取り図のボタン" /> 12 <area class="area8 area" shape="circle" coords="605,81,13" href="#" alt="工場の見取り図のボタン" /> 13 <area class="area9 area" shape="circle" coords="478,119,13" href="#" alt="工場の見取り図のボタン" /> 14 <area class="area10 area" shape="circle" coords="443,153,12" href="#" alt="工場の見取り図のボタン" /> 15 <area class="area11 area" shape="circle" coords="367,157,14" href="#" alt="工場の見取り図のボタン" /> 16 <area class="area12 area" shape="circle" coords="340,180,14" href="#" alt="工場の見取り図のボタン" /> 17 <area class="area13 area" shape="circle" coords="291,141,14" href="#" alt="工場の見取り図のボタン" /> 18</map> 19 <div class="fadein_img_wrapper"> 20 <img class="link_img_1" src="images/area_0.JPG" alt="工場入口"> 21 <img class="link_img_2" src="images/area_1.JPG" alt="工場入口"> 22 <img class="link_img_3" src="images/area_2.JPG" alt="工場入口"> 23 </div><!--/.fadein_img_wrapper --> 24</figure>

【CSS】

css

1.factory_wrapper { 2 position: relative; 3} 4 5.factory_wrapper figure{ 6 padding-top: 80px; 7 text-align: center; 8} 9 10.factory_wrapper .fadein_img_wrapper img{ 11 position: absolute; 12 top: 100px; 13 left: 150px; 14}

**###

【実現したい内容】

HTMLのイメージマップに貼ってある各リンクをクリックすると、それに紐づいた画像がフェードインしてくる
ようにしたいです。

【困っている事】

イメージマップのリンクをクリックすると画像自体は表示されます。
しかし、jQueryのeachで全てのイメージマップのリンクとそれに紐づいた画像を取得しているため、
後からループされた要素に前の要素が上書きされてしまい、どのイメージマップのリンクをクリックしても
最後に取得した画像が表示されてしまいます。
ご回答よろしくお願いします。

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

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

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

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

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

guest

回答1

0

ベストアンサー

jQuery

1 $('.area').on('click', function(event) { 2 $('.fadein_img_wrapper img').eq($(this).index()).stop().fadeToggle(); 3 });

投稿2019/12/03 05:18

x_x

総合スコア13749

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

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

Keichi_Negishi

2019/12/03 05:38

回答して頂いたコードを使用したところ、リンクと画像を紐づける事ができました。 大変助かりました。 ありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問