Google maps api V3 メモ
Google maps API
Google Maps JavaScript API V3
Google maps api V3 はアプリケーションキーの取得が不要になったので呼び出してそのまま使える。
Startup
読み込み
// sensorパラメータは必須。ユーザの位置情報を取得する場合に true を設定する // language パラメタもあり、ja を指定すると日本語でのローカライズとなる <script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>
基本 (jQuery利用)
<html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <head> <script type="text/javascript" src="http://ajax.microsoft.com/ajax/jquery/jquery-1.4.2.min.js"></script> <script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script> <script type="text/javascript"><!-- $(function(){ // 表示場所(緯度、経度指定) var _latlng = new google.maps.LatLng( 35.681382, 139.766084 ); // 表示 var _map = new google.maps.Map( document.getElementById('map_canvas') ,{ center : _latlng ,zoom : 10 ,mapTypeId : google.maps.MapTypeId.ROADMAP } ); }) //--></script> </head> <body> <div id="map"></div> </body> </html>
マーカー表示
// マーカーを作る var _marker = new google.maps.Marker({ position : new google.maps.LatLng( 緯度, 経度 ) ,map : _map ,title : 'ロールオーバーテキスト' ,draggable : true // ドラッグしたい時 }); // マーカーに吹出しをつけたい場合の吹出し var _infoWindow = new google.maps.InfoWindow({ content : '表示HTML' ,maxWidth : 300 // 最大幅(px) }); // マーカーに吹出しを付ける google.maps.event.addListener(_marker , 'click', function() { _infoWindow .open(_map, _marker); });
ちょっと深く
表示領域をマーカー表示エリアに合わせる
// 表示領域の南西、東北の緯度経度を取得しておく var _min_lat = 最小緯度 ,_min_lon = 最小経度 ,_max_lat = 最大緯度 ,_max_lon = 最大経度 ; // LatLngBoundsオブジェクト作成 var _bounds = new google.maps.LatLngBounds( new google.maps.LatLng(_min_lat, _min_lon) ,new google.maps.LatLng(_max_lat, _max_lon) ); // 指定領域が含まれるように地図を変更 this._map.fitBounds(latLngBounds);
ストリートビューを閉じる
// 地図のデフォルトパノラマオブジェクト取得 var _panorama = _map.getStreetView(); // ストリートビュー非表示 _panorama.setVisible();
ストリートビューになったかを判定
// 地図のデフォルトパノラマオブジェクト取得 var _panorama = _map.getStreetView(); // ストリートビューのパノラマ表示状態が変更されたかをハンドリング google.maps.event.addListener( _panorama ,'visible_changed' ,function () { if ( panorama.getVisible() ) { // street view mode に切り替わったらここが処理される } } );