その際、使用者が地図を操作?(ズームや移動)できないようにするにはどうしたよいのか悩んでおります。
このような自分で検索することすらままならない素人ですが、なにかヒントでもいただけると幸いです。
どなたかご教授のほどどうかよろしくお願いいたします。
https://developers.google.com/maps/documentation/javascript/controls?hl=ja#DisablingDefaults
API のデフォルトの UI 設定をオフにする場合は、Map の disableDefaultUI プロパティ(Map options オブジェクト内)を true に設定します。このプロパティは、Google Maps API のすべての自動の UI 動作を無効にします。
もう少し細かくコントロールするなら、
panControl: 移動コントロールの有効/無効を設定します。このコントロールは、デフォルトでは地図の左上隅に表示されます。さらに、panControlOptions フィールドはこのコントロールで使用する PanControlOptions を指定します。
zoomControl: ズーム コントロールの有効/無効を設定します。このコントロールは、デフォルトでは地図の左上隅に表示されます。さらに、zoomControlOptions フィールドはこのコントロールで使用する ZoomControlOptions を指定します。
scaleControl: シンプルな地図縮尺を表示するスケール コントロールの有効/無効を設定します。このコントロールは、デフォルトでは表示されません。有効にすると、地図の左下隅に表示されます。さらに、scaleControlOptions はこのコントロールで使用する ScaleControlOptions を指定します。
等のオプションがあります。組み合わせてお使いください。
あと、イベントリスナーでの無理矢理な対応として以下が上げられます。
https://developers.google.com/maps/documentation/javascript/reference?hl=ja#MapsEventListener
まず、google.maps.event.clearListeners(map,"click")関数でマップへのクリックを止めます。
同様にgoogle.maps.event.clearListeners(map, "zoom_changed")関数でマップのズームを止めます。
※mapはgoogle.maps.Mapクラスのインスタンスです。
こんな感じですね。
function initialize() { var mapDiv = document.getElementById('map-canvas'); var map = new google.maps.Map(mapDiv, { center: new google.maps.LatLng(37.4419, -122.1419), draggable: false, disableDefaultUI: true, zoom: 13, maxZoom: 13, minZoom: 13, mapTypeId: google.maps.MapTypeId.ROADMAP }); }
↓サンプル
http://savedbythegoog.appspot.com/?id=5064845de4d2c0de67ad0ba359dac1aba2e6297f