我正在尝试这样做。当用户访问网站时,我需要在谷歌地图上显示他并且还会传递一些纬度和经度。现在我的地图必须显示用户的路径以及纬度和长度我通过了。
使用我的下面的代码,我通过我的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.
答案 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可以通过多种方式找到 -
geocoder
等的ip, address
gem html5 geolocation
阅读http://mobile.tutsplus.com/tutorials/mobile-web-apps/html5-geolocation/