Googleマップを表示するカルーセルを作る方法
Googleマップを表示するカルーセルをHTML・CSS・JavaScriptで作る方法を紹介します。カルーセルを切り替えるたびに表示されるGoogleマップも切り替わるため、複数店舗の所在地や営業所、観光スポットなどを1つの画面で分かりやすく紹介できます。
このサンプルでは、前へ・次へボタンやドットナビをクリックすると、Googleマップとタイトル、説明文をまとめて切り替えられます。複数の埋め込み地図を見やすく整理できるため、店舗案内ページや会社案内、観光案内など、場所を紹介するWebサイトにも導入しやすい構成です。
地図の表示場所はGoogleマップの埋め込みURLを書き換えるだけで変更できます。また、タイトルや説明文もHTMLから自由に編集できるため、自社サイトや店舗紹介ページなど用途に合わせてカスタマイズしやすいGoogleマップカルーセルを作成できます。
免責事項 本コードの利用により発生した損害について、当サイトは一切の責任を負いません。
デモ
このデモでは、前へ・次へボタンやドットナビをクリックすると、表示するGoogleマップが切り替わります。複数の店舗や営業所、観光スポットなどを1つのカルーセルで紹介できます。
コードをコピーして使おう!
<!DOCTYPE html>
<html lang="ja">
<head>
<!-- 文字コード -->
<meta charset="UTF-8">
<!-- スマホ表示に対応 -->
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- ページタイトル -->
<title>Googleマップカルーセル</title>
<!-- CSSファイルを読み込み -->
<link rel="stylesheet" href="style.css">
</head>
<body>
<!-- Googleマップカルーセル全体 -->
<div class="google-map-carousel_demo">
<!-- カルーセル本体 -->
<div class="google-map-carousel_box">
<!-- スライド一覧 -->
<div class="google-map-carousel_track" id="google-map-carousel-track">
<!-- スライド1 -->
<div class="google-map-carousel_slide">
<!-- 場所名 -->
<div class="google-map-carousel_title">
東京駅
</div>
<!--
Googleマップ
表示場所は src の q= を変更します。
例)
q=東京駅
q=大阪駅
q=名古屋駅
緯度・経度で指定する場合
q=35.681236,139.767125
のように指定できます。
-->
<iframe
class="google-map-carousel_map"
src="https://www.google.com/maps?q=東京駅&output=embed"
loading="lazy">
</iframe>
</div>
<!-- スライド2 -->
<div class="google-map-carousel_slide">
<div class="google-map-carousel_title">
大阪駅
</div>
<iframe
class="google-map-carousel_map"
src="https://www.google.com/maps?q=大阪駅&output=embed"
loading="lazy">
</iframe>
</div>
<!-- スライド3 -->
<div class="google-map-carousel_slide">
<div class="google-map-carousel_title">
名古屋駅
</div>
<iframe
class="google-map-carousel_map"
src="https://www.google.com/maps?q=名古屋駅&output=embed"
loading="lazy">
</iframe>
</div>
</div>
</div>
<!-- 操作ボタン -->
<div class="google-map-carousel_controls">
<!-- 前へ -->
<button
class="google-map-carousel_arrow google-map-carousel_prev"
id="google-map-carousel-prev"
type="button"
aria-label="前へ">
前へ
</button>
<!-- ドットナビ -->
<div class="google-map-carousel_dots">
<button
class="google-map-carousel_dot is-active"
type="button"
data-index="0"
aria-label="東京駅">
</button>
<button
class="google-map-carousel_dot"
type="button"
data-index="1"
aria-label="大阪駅">
</button>
<button
class="google-map-carousel_dot"
type="button"
data-index="2"
aria-label="名古屋駅">
</button>
</div>
<!-- 次へ -->
<button
class="google-map-carousel_arrow google-map-carousel_next"
id="google-map-carousel-next"
type="button"
aria-label="次へ">
次へ
</button>
</div>
</div>
<!-- JavaScriptファイルを読み込み -->
<script src="script.js"></script>
</body>
</html>
ファイル構成と設置方法
このサンプルは、HTML・CSS・JavaScriptの3ファイルで構成されています。HTMLでGoogleマップカルーセルのレイアウトを作成し、CSSでレイアウトやボタン、ドットナビのデザインを設定します。JavaScriptでは前へ・次へボタンやドットナビをクリックした際のスライド切り替えを制御しています。
sample
├── index.html
├── style.css
└── script.js
sample/index.html をブラウザで開くと動作を確認できます。場所名は index.html の google-map-carousel_title を編集することで変更できます。Googleマップの表示場所は各 iframe の src 属性を変更して指定します。例えば q=東京駅 を q=大阪駅 に変更すると大阪駅の地図が表示されます。住所や施設名なども指定できます。緯度・経度を使用する場合は q=35.681236,139.767125 のように q=緯度,経度 の形式で指定してください。例えば東京駅は q=35.681236,139.767125、大阪駅は q=34.702485,135.495951 のように指定できます。カルーセルの切り替え速度は style.css の transition: transform .45s ease; を変更します。.45s = 0.45秒で、数値を大きくすると切り替えがゆっくりになり、小さくすると速くなります。
コメント