2

クライアントの現在の場所にマップセンターを作成するにはどうすればよいですか。ただし、現在の場所を特定できない場合は、デフォルトで以下のLatLngを使用します。

var myOptions = {
  center: new google.maps.LatLng(12.659493, 79.415412),
  zoom: 12,
  scrollwheel: false,
  mapTypeId: google.maps.MapTypeId.ROADMAP
}
4

1 に答える 1

4

この目的のために、HTML 5 Geolocation 関数を使用できます。近いですが、超正確ではありません。

デモ

  var map;

  function initialize() {
    if(navigator.geolocation) {
      success = function(position) {
        createMap(position.coords.latitude, position.coords.longitude);
      };
      error = function() { createMap(12.659493, 79.415412); }

      navigator.geolocation.getCurrentPosition(success, error);
    }
    else {
      createMap(12.659493, 79.415412);
    }
  }

  function createMap(lat, lng) {
    var mapOptions = { center: new google.maps.LatLng(lat, lng), 
      zoom: 12,
      scrollwheel: false,
      mapTypeId: google.maps.MapTypeId.ROADMAP };
    map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions);
  }
于 2012-06-16T20:41:47.777 に答える