• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:GoogleMap クリックで情報ウィンドウ)

GoogleMapクリックで情報ウィンドウを表示する方法

このQ&Aのポイント
  • GoogleMap API v3を使用して、任意の一点をクリックするとマーカーが置かれて座標が取得できるようにしたい。
  • マーカーに情報ウィンドウを表示するために、新しいgoogle.maps.InfoWindowをどこに置けばいいかわからない。
  • マーカーの設置と座標の取得はできるが、情報ウィンドウの配置方法について詳しい方のアドバイスを求めています。

質問者が選んだベストアンサー

  • ベストアンサー
  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.1

クリックしたときにマーカーと情報ウィンドウが同時に表示されるのか、クリックするごとにマーカーは増えてゆくのかなど不明なところはありますが、勝手に、マーカー表示は一個のみで情報ウィンドウも同時に表示されると解釈して、ご参考までに。 (表示方法を変えないと、このままではマーカーと重なってしまっていますが…) (全角空白は半角に) <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"> <html lang="ja"> <head><title>sample</title> <meta http-equiv="Content-Style-Type" content="text/css"> <meta http-equiv="Content-Script-Type" content="text/javascript"> <script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script> <script type="text/javascript"> function initialize(){ //地図を表示  var latlng = new google.maps.LatLng(35.69, 139.70);  var map = new google.maps.Map(document.getElementById("map"),{   zoom : 16,   center : latlng,   mapTypeId : google.maps.MapTypeId.ROADMAP  }); //InfoWindow定義  var infoWnd = new google.maps.InfoWindow();  function showInfo(){   var pos = marker.getPosition();   var content = "<p style='width:100px; height:30px;'>lat="      + fix(pos.lat()) + "<br>lng=" + fix(pos.lng());   infoWnd.setOptions({    position: pos,    content: content   });   infoWnd.open(map);  }  function fix(num){ return (num*10000 | 0)/10000; } //Marker作成  var marker = new google.maps.Marker({   position:latlng,   map: map,   draggable: true,   visible:false  });  google.maps.event.addListener(marker, "click", showInfo); //clickイベント処理  google.maps.event.addListener(map, 'click', function(evt){   marker.setPosition(evt.latLng);   marker.setVisible(true);   showInfo(marker);  }); } google.maps.event.addDomListener(window, 'load', initialize); </script> </head> <body> <div id="map" style="width:800px; height:600px; "></div> </body> </html> マーカーを追加していくなら、新しいオブジェクトを作成するようにすればよろしいかと。 (上のサンプルでは一つを使いまわしています) google mapに関しては以下に情報が公開されていますので、たいていのことはここで調べればわかります。 (この回答も、ここを見ながら作成しました) https://developers.google.com/maps/documentation/javascript/reference?hl=ja

blackbelt2004
質問者

お礼

マーカー作成とウィンドウ表示を同時に行うという事で混同しておりました。 リンク先の解説でようやく理解しました。 熟読して更に理解しようと思います。 ありがとうございました。