2010-11-28 79 views
11

有一个文本框供人们输入他们的位置。当人们输入时,他们应该看到Google Map的建议自动填充有没有办法使用Google地图来自动填充用户位置?

然后,一旦他们从自动完成中选择一些东西,我想要一个警报的经纬度

是否可以使用Google Maps执行这两项任务?

我的目标是以最简单的方式获得该人的经纬度。 理想情况下...有没有一个插件来做到这一点?

+1

这是http://stackoverflow.com/questions/1323661/location-search-autocomplete-that-integrates-with-bing-google-geocoding – andynormancx 2010-11-28 09:17:06

+0

的重复此问题有2个部分,因此似乎不是重复的上述问题 – Philar 2010-11-28 10:16:59

回答

4

我已经设置了演示here。建议的功能由jQuery插件处理。

<script type="text/javascript" src="./jquery-1.4.2.js"></script> 
<link type="text/css" rel="stylesheet" href="http://freebaselibs.com/static/suggest/1.3/suggest.min.css" /> 
<script type="text/javascript" src="http://freebaselibs.com/static/suggest/1.3/suggest.min.js"></script> 
<script type="text/javascript"> 
$(function() { 
    $("#address").suggest({type:'/location/citytown'}); 
}); 
</script> 

标记的使用谷歌API V3

var marker = new google.maps.Marker({ 
     position: latlng, 
     map: map, 
     zIndex: Math.round(latlng.lat()*-100000)<<5 
    }); 

标记的位置被添加到的infoWindow

infowindow.setContent("<h3>Markers "+(marker_id+1)+" "+marker.position+"</h3>"); 

内容串完整的JavaScript可以发现here加入

0

根据“插件做到这一点”,支持现代HTML5的浏览器内置geolocation APIWikipedia article here

因人而异

+0

我知道,但用户可能会提交一个不同的位置。 – TIMEX 2010-11-28 09:07:03

+1

啊,好的。所以当你说“他们的位置”时,你的意思是“他们感兴趣的位置”,而不是“他们现在的位置”。 – Eric 2010-11-28 09:08:59

3

谷歌地图API V3使这真的 简单。在this page使用源代码,只需找到行:

var place = autocomplete.getPlace(); 

,并在之后将其添加这一项:

alert(place.geometry.location.toString()); 

这应该同时满足您的要求。

相关问题