使用谷歌地图显示我的位置

时间:2012-02-01 05:29:03

标签: google-maps-api-3

我正在尝试这样做。当用户访问网站时,我需要在谷歌地图上显示他并且还会传递一些纬度和经度。现在我的地图必须显示用户的路径以及纬度和长度我通过了。

使用我的下面的代码,我通过我的lat和long.Now,我需要显示用户位置。

如何显示这两个?

       function initialize() {

   var myOptions = {
   zoom: 17,
   center: new google.maps.LatLng(23.333,34.534),
   mapTypeId: google.maps.MapTypeId.ROADMAP
   }
   var map = new google.maps.Map(document.getElementById("map_canvas"),
                              myOptions);

  var image = 'image.png';
  var myLatLng = new google.maps.LatLng(23.333,34.534);
  var beachMarker = new google.maps.Marker({
    position: myLatLng,
    map: map,
    icon: image
   });
   } 

[This is how i tried]:http://dpaste.com/695949/ 
  it did not work.

2 个答案:

答案 0 :(得分:2)

如果你想使用HTML5地理位置,那么在你添加beachMarker之后你的初始化函数就放了:

if (navigator.geolocation) {
  navigator.geolocation.getCurrentPosition(function(e) {
    var marker = new google.maps.Marker({
      map: map,
      position: new google.maps.LatLng(e.coords.latitude, e.coords.longitude);
    });
  }, function() {
    // Handle error here
  });
}

答案 1 :(得分:1)

要在Google地图上显示路线,您需要拥有源和目标latlong。在上面的代码中,您有目标latlong但缺少用户latlong。你需要首先获得用户latlong然后你必须使用谷歌方向渲染器。有关更多参考,请阅读http://code.google.com/apis/maps/documentation/javascript/directions.html

用户(来源)latlong可以通过多种方式找到 -

  1. 使用基于geocoder等的ip, address gem
  2. 使用html5 geolocation阅读http://mobile.tutsplus.com/tutorials/mobile-web-apps/html5-geolocation/