SHU BLOG

BLOG NEWS ブログ

TITLE

【jQuery】クリッカブルマップをレスポンシブ対応させよう!

SHU[シュウ]

1991年生まれ九州の宮崎県育ち
高校卒業後、愛知県で自動車関係の
お仕事に5年間勤め、WEB業界に
転職致しました。
趣味:サッカー観戦、ゲーム、映画、漫画
基本インドアです!笑

シュウ
シュウ
今回は【jQuery】クリッカブルマップをレスポンシブ対応させよう!
の解説になります!

こんな方に読んでほしい

  • jQueryを学び始めた方へ
  • クリッカブルマップをレスポンシブ対応について解説しております。
  • 今回はRWD Image Mapsについて解説しております。

前回は、「ククリッカブルマップを簡単に設定できるサイトの解説!!」をしております。
クリッカブルマップとは、Webサイトの上の画像(丸・多角形)に対してリンクを設定できることを示します。
イメージ図は下記のようになります。

※クリッカブルマップはレスポンシブにした際に、座標のズレが生じる問題が発生します。
今回は、「RWD Image Maps」を指定し、座標のズレの問題を解決します。

RWD Image Mapsについて

RWD Image Mapsについて

RWD Image Mapsとは、レスポンシブにした際に、座標のズレの問題を解決してくれるプラグインになります。
jQueryが苦手な方でも問題ありません。基本は設置するだけの作業になります。
まずは下記のサイトから「RWD Image Maps」をダウンロードしましょう。

jQuery-rwdImageMapsにアクセス
1https://github.com/stowball/jQuery-rwdImageMaps
「Code」ボタンをクリック
2
「Download ZIP」ボタンをクリック
3

必要なファイルについて

ダウンロード後に必要なファイルについて解説していきます。
まずは、ファイル名の「jQuery-rwdImageMaps-master」をご確認ください。

jsファイル
1jquery.rwdImageMaps.min」を使用します。
<!--js-->
<script src="js/jquery.rwdImageMaps.min.js" type="text/javascript"></script>

また、「jquery.rwdImageMaps.min.js」を使用する際には、rwdImageMapsを使用する宣言をしなければなりません。
以下のコードを合わせて指定しましょう。

<!--js-->
<script src="js/jquery.rwdImageMaps.min.js" type="text/javascript"></script>
<script>
$(function(){
  $('img[usemap]').rwdImageMaps();
});
</script>

「jquery.rwdImageMaps.min.js」と繋げて記述するのが良いでしょう。
また、ファイルの階層は、ご自身のフォルダに合わせてください。

次に、jquery本体のプラグイン設置します。
今回は2つ目のパターンを採用して解説します。

1つ目は、ファイルをダウンロードして使用するパターン、
2つ目は、ファイルをダウンロードせずに、「URL」から読み込むパターンになります。
どちらでも問題ありません。

<!--js-->
<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
<script src="js/jquery.rwdImageMaps.min.js" type="text/javascript"></script>
<script>
$(function(){
  $('img[usemap]').rwdImageMaps();
});
</script>

必ず、jquery本体のプラグイン上、rwdImageMapsを下に設置しましょう。
jqueryをダウンロードしたい方は、こちらのリンクから。

記述場所について

基本的にはhead内に指定するようにしましょう。
基本構造の書き方は以下のようになります。

<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title> 【jQuery】クリッカブルマップを....</title>
</head>
<body>

 コンテンツが入ります。
<!--js-->
<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
<script src="js/jquery.rwdImageMaps.min.js" type="text/javascript"></script>
<script>
$(function(){
  $('img[usemap]').rwdImageMaps();
});
</script>
</body>
</html>

クリッカブルマップの設定について

クリッカブルマップの設定について

前回の「HTML Imagemap Generator」で既に座標を抽出しています。

座標に抽出の方法はコチラからご確認ください。
書き方は以下のようになります。

rwdImageMapsを実装

<div id="top" class="area">
  <p>円のリンク先</p>
</div>

<img src="画像パス" usemap="#ImageMap" width="650" height="290" alt="" />
<map name="ImageMap">
  <area shape="circle" coords="145,152,97" href="#top" alt="" />
  <area shape="poly" coords="441,58,549,57,605,151,550,247,439,246,385,151,440,57,185,39" href="#top02" alt="" />
</map>

<div id="top02" class="area">
  <p>六角形のリンク先</p>
</div>
.area {
    width: 100%;
    text-align: center;
    padding: 5em 0 40em;
    box-sizing: border-box;
    background-color: #f9f9f9;
    font-size: 20px;
}

img {height: auto;}

/*--PC--*/
@media screen and (min-width: 1025px){
	.area {
		padding: 5em 0;
	}
}

今回はレスポンシブ対応ですので、必ずviewportの設定を忘れずにしましょう。
一度、「スマートフォン」でご確認して見てください。
こちらにデモサイトを用意しました。
下記からご確認ください。

まとめ

今回はこれで以上です。

POINT
  • jquery.rwdImageMaps.min.jsとは、レスポンシブにした際に、座標のズレの問題を解決してくれるプラグインになります。
  • 必要なファイルはjquery.rwdImageMaps.min.jsになります。
  • 「jquery.rwdImageMaps.min.js」を使用する際には、rwdImageMapsを使用する宣言をしなければなりません。
  • こちらにデモサイトを用意しました。
スポンサーリンク

SHU

1991年生まれ九州の宮崎県育ち高校卒業後、愛知県で自動車関係のお仕事に5年間勤め、WEB業界に転職致しました。
趣味:サッカー観戦、ゲーム、映画、漫画基本インドアです!笑
つくる、しあわせをテーマとして主にWEBに関する様々な情報を発信しています。

最新記事

関連記事

オススメ記事

月別アーカイブ

page_top