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

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

新規登録して質問してみよう
ただいま回答率
85.48%
jQueryプラグイン

jQueryの拡張機能。 様々な種類があり、その数は膨大です。公開済みのプラグインの他にも、自作することもできます。 jQueryで利用できるようにしておくだけで、導入およびカスタマイズが比較的容易に行なえます。

JavaScript

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

Q&A

解決済

3回答

3149閲覧

同じ場所にmapを表示、ボタンクリックで地図を切り替えたい

r110

総合スコア16

jQueryプラグイン

jQueryの拡張機能。 様々な種類があり、その数は膨大です。公開済みのプラグインの他にも、自作することもできます。 jQueryで利用できるようにしておくだけで、導入およびカスタマイズが比較的容易に行なえます。

JavaScript

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

0グッド

0クリップ

投稿2017/06/28 04:40

編集2017/06/28 06:34

googlemapを表示させたいのですが、うまくいきません。

2つの地図を1つの場所に配置し、ボタンクリックで表示を切り替えたくて、下記のとおり作成しました。

<!--html--> <div class="access"> <h2>所在・MAP</h2> </div> <hr> <div class="shozaichi"> <h3>所在地</h3> <div class="cal"> <p><span class="calname">会社1</p> <div class="map1"> <p>MAP</p> </div> </div> <div class="chf"> <p><span class="chfname">会社2</p> <div class="map2"> <p>MAP</p> </div> </div> </div> <div id="map"> <p>拠点・MAP</p> <div id="cal_map"> <!--<p class="mapinfo">会社1</p>--> <div id="map_canvas_01"></div> <div class="access_01"> <p class="com">会社1</p> <p class="add">住所</p><br /><br /> <p class="text">【アクセス】</p> </div> </div> <!--<p class="mapinfo">会社2</p>--> <div id="chf_map"> <div id="map_canvas_02"></div> <div class="access_02"> <p class="com">会社2 </p> <p class="add">住所</p> <br /> <br /> <p class="text">【アクセス】</p> </div> </div> </div><!--#map--> <script type="text/javascript"> (function(){ var latlng = new google.maps.LatLng(35.682139, 139.768782); var myOptions = { zoom: 15 , center: latlng , mapTypeId: google.maps.MapTypeId.ROADMAP }; var map_01 = new google.maps.Map( document.getElementById("map_canvas_01") , myOptions ); var marker = new google.maps.Marker({ position: latlng, map: map_01 }); var latlng = new google.maps.LatLng(35.857416, 139.309805); var myOptions = { zoom: 15 , center: latlng , mapTypeId: google.maps.MapTypeId.ROADMAP }; var map_02 = new google.maps.Map( document.getElementById("map_canvas_02") , myOptions ); var marker = new google.maps.Marker({ position: latlng, map: map_02 }); }()); </script> <script type="text/javascript"> $(function() { $('.map1').click(function(){ $('#cal_map').show(); $('#chf_map').hide(); }); google.maps.event.trigger( map, "resize" ) ; }); $(function() { $('.map2').click(function(){ $('#chf_map').show(); $('#cal_map').hide(); }); google.maps.event.trigger( map, "resize" ) ; }); </script> <!--css--> .access h2{ clear: both; line-height: 120px; font-size: 24px; font-weight: bold; text-align: center; letter-spacing: 4px; } .shozaichi{ height:200px; text-align:center; margin-bottom:50px; } .shozaichi h3{ font-size:20px; font-weight:bold; letter-spacing:2px; } .shozaichi .cal{ height:45px; display:flex; text-align:left; font-size:16px; line-height:27px; position:relative; margin-bottom:30px; } .shozaichi .cal .calname{ display: inline-block; width: 18em; } .shozaichi .cal .map1{ line-height:16px; letter-spacing:1px; font-size:12px; display:block; color:#fff; background-color:#000; padding-left:4px; padding-right:4px; margin-right:50px; position:absolute; right:0; bottom:25px; cursor:pointer; } .shozaichi .chf{ height:45px; display:flex; text-align:left; font-size:16px; line-height:27px; position:relative; margin-bottom:30px; } .shozaichi .chf .chfname{ display: inline-block; width: 18em; } .shozaichi .chf .map2{ line-height:16px; letter-spacing:1px; font-size:12px; display:block; color:#fff; background-color:#000; padding-left:4px; padding-right:4px; margin-right:50px; position:absolute; right:0; bottom:25px; cursor:pointer; } #map{ text-align:center; height:1200px; position:relative; } #map #map_canvas_01{ position:absolute; top:180px; left:50px; width:840px; height:410px; margin:0px auto 50px; } #map .access_01{ position:absolute; top:590px; left:50px; width:760px; height:220px; margin:0px auto 50px; background-color:#fff; text-align:left; padding:30px 40px; } #map .access_01 .com{ font-size:16px; line-height:27px; font-weight:bold; } #map .access_01 .add{ font-size:14px; line-height:27px; font-weight:normal; } #map .access_01 .text{ font-size:14px; line-height:27px; font-weight:normal; } #map #chf_map{ display:none; } #map #map_canvas_02{ position:absolute; top:180px; left:50px; width:840px; height:410px; margin:auto; } .access_02{ position:absolute; top:590px; left:50px; width:760px; height:220px; margin:0px auto 50px; background-color:#fff; text-align:left; padding:30px 40px; } #map .access_02 .com{ font-size:16px; line-height:27px; font-weight:bold; } #map .access_02 .add{ font-size:14px; line-height:27px; font-weight:normal; } #map .access_02 .text{ font-size:14px; line-height:27px; font-weight:normal; }

基本はmap1を表示していて、ボタン2を押すとmap2に切り替わる、またボタン1を押すとmap1に戻る、
というように表示したいのですが、ボタン2を押すとmapが表示されず、画面を縮小、拡大するとなぜか表示されます。

このような場合、どのようにしたらよろしいのでしょうか?
教えてください。どうぞよろしくお願いいたします。

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

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

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

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

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

guest

回答3

0

ベストアンサー

たぶん、2個めの地図が最初からdisplay:noneになっているからではないでしょうか?
画面のロード時に非表示になっていると地図がうまく読み込まれないようです。
地図を読み込んでから非表示にするようにしたら直るかもしれません

display:noneの要素にGoogle Mapsを貼り付ける

投稿2017/06/28 06:31

編集2017/06/28 06:37
onodo

総合スコア97

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

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

r110

2017/06/28 06:46

ご回答ありがとうございます! display:noneを消し、1個目の地図をz-index:2にして上に表示したらうまくいきました!!! 急いでいたのでとても助かりました!!本当にありがとうございました。
guest

0

resizeを実行すればどうでしょう。

【resize - 地図のリフレッシュを実行した時に発火するイベント】
https://syncer.jp/Web/API/Google_Maps/JavaScript/Map/resize/

JavaScript

1google.maps.event.trigger( map, "resize" ) ;

投稿2017/06/28 05:00

kei344

総合スコア69400

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

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

r110

2017/06/28 05:38

ご回答いただきありがとうございます! 教えていただいたコードを入れても、表示は変わりませんでした。 http://smartinfo.calneco.jp/about/access.html こちらテストサイトなのですが、二つ目のmapボタンを押しても、表示されません。 どうしたらよろしいでしょうか? 教えていただけるとありがたいです。よろしくお願いいたします。
kei344

2017/06/28 05:57

とりあえず質問文にその近辺も含めたコードを提示されてはいかがでしょう。質問文は編集可能ですし、コードの全容が書かれているほうが回答しやすいと思います。
r110

2017/06/28 06:35

ご回答ありがとうございます。 コードを編集しました。こちらでいかがでしょうか? また、他にいいコードの入力かたなどあれば教えてください。 よろしくお願いいたします。
guest

0

showとhideに指定しているidが間違っていませんか?
HTML上には下記のidが見受けられません。

javaScript

1 $('#map1').show(); 2 $('#map2').hide();

投稿2017/06/28 05:00

編集2017/06/28 05:01
airia

総合スコア33

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

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

r110

2017/06/28 05:40

ご回答ありがとうございます。 すみません、先ほど記載した質問文を誤って記載していました。 $('#map1').show(); $('#map2').hide(); と記載しても、同じような状況です。どうしたらよろしいでしょうか?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問