Google地图中心设置用户当前位置

时间:2015-02-04 18:59:29

标签: google-maps geolocation

我正在尝试让标记移动并获得lat lng。我的代码工作正常。但现在我想将我的地图中心设置为我当前的位置。我正在尝试使用地理位置代码,但是当我添加getCurrentPosition时,地图不显示。

我的移动标记地图代码是

 var marker, map;

      function initialize() {
        var myLatlng = new google.maps.LatLng(53.871963457471786,10.689697265625);      

                var mapOptions = {
          zoom: 4,
          center: myLatlng,
          mapTypeId: google.maps.MapTypeId.ROADMAP
        } 
        map = new google.maps.Map(document.getElementById('map_canvas'), mapOptions);

        marker = new google.maps.Marker({
            position: myLatlng,
            map: map,
            title: 'Hello World!'
        });

      }
      $(function() {
        initialize();

        google.maps.event.addListener(map, 'click', function(event) {    
            var lat=event.latLng.lat();
            var lng=event.latLng.lng();
            $('#latlng').val(lat+', '+lng); 
          marker.animateTo(event.latLng);
        });
      }); 

   <input type="text" id="latlng" size="40" /><br />
    <div id="map_canvas"></div>

1 个答案:

答案 0 :(得分:0)

这应该够了......

    navigator.geolocation.getCurrentPosition(function(position) {
      var initialLocation = new google.maps.LatLng(position.coords.latitude,position.coords.longitude);
      map.setCenter(initialLocation);
    }, function() {
      //handle no geolocation
    });

确保在创建地图后运行此功能。

顺便说一句,这是来自Google地图文档。