2012-08-29 84 views
9

我使用下面的代碼獲取的用戶在PhoneGap的位置(正常工作)如何在谷歌地圖中突出顯示用戶的當前位置?

function getLocation() { 
    var win = function(position) { 
     var lat = position.coords.latitude; 
     var long = position.coords.longitude; 
     var myLatlng = new google.maps.LatLng(lat, long); 

     var myOptions = { 
      center: myLatlng, 
      zoom: 7, 
      mapTypeId : google.maps.MapTypeId.ROADMAP 
     }; 
     var map_element = document.getElementById("displayMap"); 
     var map = new google.maps.Map(map_element, myOptions); 
    }; 

    var fail = function(e) { 
     alert('Error: ' + e); 
    }; 

    var watchID = navigator.geolocation.getCurrentPosition(win, fail); 
} 

這是工作在地圖上居中用戶的當前位置精準。但我想在用戶的位置上顯示一個指示符(紅點)。但我可以看到,google API只提供3個選項center,zoom和mapTypeId。

是否有任何可用的選項可用於突出顯示位置或是否有解決方法?

編輯

能發現,谷歌地圖API具有標誌豪亮點的任何位置。這看起來很有幫助,但是它顯示了默認的紅色氣球,可以通過自定義圖像修改嗎?

回答

12

您可以使用新發布的GeolocationMarker,它是Google Maps API Utility Library的一部分。

它會在用戶當前位置添加一個標記和精度圓。它還允許開發人員使用setMarkerOptions方法並指定icon屬性來自定義標記。

4

內使用標記圖標像

var Marker = new google.maps.Marker({ 
     map: map, 
     animation: google.maps.Animation.DROP, 
     position: "", 
     icon: /bluedot.png 
}); 

您可以使用類似於谷歌地圖

enter image description here

這個谷歌地圖的位置指示圓形藍點圖標
相關問題