【jQuery】クリッカブルマップ『RWD Image Maps』を使いこなせば、レスポンシブでもズレませーん

【jQuery】クリッカブルマップ『RWD Image Maps』を使いこなせば、レスポンシブでもズレませーん
スマホだとクリッカブルがズレますー
そんな時は『RWD Image Maps』を使いましょうー

【実装】丸でクリッカブルしてみました

画像サイズ(widthとheight)の指定は必須です。

See the Pen 【jQuery】画像のレスポンシブ対応でクリッカブルマップがズレない『RWD Image Maps』を使いこなす by 125naroom (@125naroom) on CodePen.

HTMLとCSSとjQueryはこちら

HTML

<div class="imgBox">
  <img src="https://125naroom.com/demo/img/sample_maru.jpg" alt="" width="1483" height="1483" usemap="#Map">
  <map name="Map">
    <area shape="circle" coords="375,331,154" href="#s_01">
    <area shape="circle" coords="1108,331,154" href="#s_01">
    <area shape="circle" coords="1108,1011,154" href="#s_01">
    <area shape="circle" coords="375,1011,154" href="#s_01">
  </map>
  </div>

CSS

.imgBox {
    text-align: center;
    margin: 50px 0;
}
.imgBox img {
    max-width: 100%;
    height: auto;
    vertical-align: top;
}

jQuery

$(function(){
  $('img[usemap]').rwdImageMaps();
});

【実装】ホバー設定したい時は、focusが使えます

ホバー設定がしたい時は、focusが使えます。
ただし、ブラウザによっては効かない(同じ効果にならない)場合があるので要注意です。

See the Pen 【jQuery】画像のレスポンシブ対応でクリッカブルマップがズレない『RWD Image Maps』を使いこなす by 125naroom (@125naroom) on CodePen.

jQuery

$(function(){
  $('area').hover(
   function() { $(this).focus().css('outline','10px solid #000'); },
   function() { $(this).blur().css('outline','none'); }
  )
});

『RWD Image Maps』のダウンロード

まずは『RWD Image Maps』に必要なファイルを下記サイトからダウンロードします。

『RWD Image Maps』の使い方

ダウンロードファイルの中で必要なファイルは以下の1点です。

  • jquery.rwdImageMaps.min.js

※『min』のついてないファイルでもオッケーです。『min』が付いているファイルは改行などがない容量軽減版になります。

HTML

<script type="text/javascript" src="js/jquery-3.5.1.min.js"></script>
<script type="text/javascript" src="js/jquery.rwdImageMaps.min.js"></script>

CDNを使う場合は、

<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jQuery-rwdImageMaps/1.6/jquery.rwdImageMaps.min.js"></script>

jQuery

$(function(){
  $('img[usemap]').rwdImageMaps();
});

※ img[usemap]は、RWD Image Mapsを適用する。
※ クリッカブルマップは、全て適用されるので上記を書くだけで問題なしです。

イメージマップを作成してくれる便利なサイトさん

画像をドラッグするだけでとっても簡単にコードが手に入ります。

メモ

jQueryのことで何かわからないことがあればjQueryの日本語リファレンスサイトがあるので一度チェックしてみるといろいろ解決できたりしますよ。

さいごに

スマホでもクリッカブルできましたー
やったー
Author

デザコト

あ、いいな、と思うWebデザインを紹介しています。デザインの参考に。やさしいデザインが多いです。Webデザインギャラリー『デザインのこと - Web design gallery』を運営しています。

Googleさんの
おすすめ

7

/

14

2024

Googleさんの
おすすめ

7

/

14

2024

デザインの記事

株式会社High Link
自主映画『アット・ザ・ベンチ』第2編「まわらない」
【jQuery】スライダープラグイン「slick」実装サンプル集