A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
こんにちは
google社はmapのカスタマイズなどのために、javascriptを利用したAPIを提供しています。
https://developers.google.com/maps/documentation …
実際のスクリプトの書き方についても充実した説明(リファレンス)が用意されています。
https://developers.google.com/maps/documentation …
これらを利用することで、ご質問のような内容は実現可能と思います。
店舗の位置情報や経営者情報はどこかにあるものとして、ごく簡単な要領だけの例を以下に作成してみました。
実際の情報量が多いような場合は、外部から読み込むなどの工夫が必要と思います。
(ご例示のようなgoogleに登録済みの店舗情報等であれば、Google Placesのサービスを利用することでも情報を取得可能と思われますが…)
>オーナーが経営する他の店舗も点滅を始める~~
点滅をいつやめるのかや、見た目にうるさいので色を変える等にする方が良さそうとも思いましたが、とりあえずご質問の通りに点滅します。(笑)(3回で自動停止)
※ 他にも方法は様々にあると思いますので、あくまでも雰囲気の一例としてのサンプルです。
※ スクリプト部のインデントは全角空白に変えてありますので、半角に。
<!DOCTYPE HTML>
<html lang="ja">
<head><title>sample</title>
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false" …
<script type="text/javascript">
function initialize(){
var sData = shopData();
// ** マップを作成 **
var map = new google.maps.Map(document.querySelector("#map"), {zoom:15});
// ** インフォウィンドウを作成 **
var infoWin = new google.maps.InfoWindow({map:map});
infoWin.close();
// ** マーカを作成 **
var bounds = new google.maps.LatLngBounds();
sData.forEach(function(s, i){
var latlng = { lat:s.lat, lng:s.lng };
var marker = new google.maps.Marker({
position: latlng,
map: map,
});
s.marker = marker;
bounds = bounds.extend(latlng);
// マーカークリック時の処理
marker.index = i;
google.maps.event.addListener(marker, "click", function(){
var ss = sData[ this.index ];
// インフォウインドウを表示
infoWin.open(map, this);
infoWin.setContent(ss.name);
// 同じオウナーの店を点滅
var owner = ss.owner;
sData.forEach(function(s){
if(s.owner == owner) blink(s.marker, 6);
});
});
});
map.fitBounds(bounds);
// ** マーカー点滅処理 **
function blink(m, n){
if(n<1) return;
m.setVisible( !(--n % 2));
setTimeout( function(){ blink(m, n); }, 400);
}
}
google.maps.event.addDomListener(window, 'load', initialize);
// ** テスト用店舗データ **
function shopData(){
return [
{ lat:35.683060650, lng:139.775576591, name:"日本橋一丁目店", owner:"A"},
{ lat:35.678982131, lng:139.773001671, name:"日本橋三丁目店", owner:"A"},
{ lat:35.676480885, lng:139.778312445, name:"八丁堀二丁目店", owner:"B"},
{ lat:35.678494089, lng:139.777883291, name:"茅場町三丁目店", owner:"B"},
{ lat:35.679705474, lng:139.779675007, name:"茅場町駅前店", owner:"B"},
{ lat:35.671260261, lng:139.777657985, name:"入船店", owner:"B" },
{ lat:35.674502492, lng:139.761650562, name:"有楽町一丁目店", owner:"C"},
{ lat:35.680123789, lng:139.762669802, name:"丸の内仲通りビル店", owner:"C"},
{ lat:35.685160832, lng:139.766693115, name:"新大手町ビル店", owner:"C"},
{ lat:35.672105695, lng:139.767905474, name:"銀座三丁目店", owner:"C"},
{ lat:35.669360184, lng:139.756897688, name:"内幸町一丁目店", owner:"A"}
];
}
</script>
</head>
<body>
<div id="map" style="width:800px; height: 600px;"></div>
</body>
</html>
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Google Maps Google map 外部サイトによってピンが発生、消去出来ない 3 2022/08/06 23:16
- Google Maps Googleマップの口コミについて。 Googleマップの口コミを書きたいのですが、自分のプロフィー 2 2023/05/23 09:48
- Google Maps Googleマップがすごく詳細で、航空写真の画質も良く、スポットのピンもたくさん登録されていて、Go 1 2022/08/28 11:26
- Google Maps マップのピン留めを永久保存方法(複数) 1 2022/09/19 16:28
- Google Maps Google マップの特定の場所を指定した情報を保存し、他の人に送る方法を教えて下さい。 2 2022/05/23 21:08
- Google Maps Googleマップの店舗情報や口コミなどを全て削除することは可能ですか?経営者や営業形態も全て変わっ 1 2022/06/20 18:03
- Google Maps Googleマップでは、連絡地下道がある場合、その地下道を通っての直通ルートは表示されないんですか? 1 2022/12/09 13:32
- Chrome(クローム) Chromeでgooglemap検索等結果が他国になってしまう 1 2022/10/05 12:18
- その他(クラウドサービス・オンラインストレージ) データ保存先をOneDriveからPC本体に変えたらDocumentとPictureフォルダが消えた 1 2023/07/30 15:48
- その他(ブラウザ) テキストを入れるときの縦線の点滅がそれ以外のブラウザ上にも表れます。 1 2022/07/29 21:55
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
二つのbxsliderをレスポンシブ...
-
Googleマップに複数のピンを立...
-
カンマ区切りのデータを配列に...
-
Python: TypeError
-
googleマップが表示されない。
-
Javascriptを使ってQRコード読...
-
同一ページ移動時ハンバーガー...
-
Selenium Basicの件
-
階層別の組織図の自動作成について
-
要素内を常に一番下を表示させたい
-
jQueryで追加した要素がマウス...
-
【再質問】計算(入数*単価)...
-
JavascriptからPHPへのAjax通信...
-
jQueryを使いformでsubmitした...
-
jQueryのblockUIをformのボタン...
-
jQueryでloadした部分に.jsが効...
-
変数の内容を別functionに渡したい
-
JavaScriptでtabindexの変更っ...
-
パソコンで動くjavascriptがス...
-
インラインフレームを自動更新...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
カンマ区切りのデータを配列に...
-
二つのbxsliderをレスポンシブ...
-
迷路探索プログラムを作るには...
-
google maps api v3のルート検索
-
how's whether today in yufuin?
-
Google Maps:同マップ内でそれ...
-
Python: TypeError
-
Selenium4でボタンをクリックで...
-
Javascriptを使ってQRコード読...
-
JavascriptからPHPへのAjax通信...
-
IndexedDB を使ってファイルア...
-
同一ページ移動時ハンバーガー...
-
JavaScriptでtabindexの変更っ...
-
jQueryを使いformでsubmitした...
-
SQLのmaxで求めた値を変数に代...
-
インラインフレームを自動更新...
-
階層別の組織図の自動作成について
-
ドラッグ & ドロップでのド...
-
jQuery toggle() 戻るで開いた...
-
AjaxでJSONを受信すると、文字...
おすすめ情報