我试图从谷歌地图API获取经度和纬度值,但它似乎没有返回任何值。我的语法有问题吗?谷歌地图 - 使用地理编码器获取长/纬度为javascript
var point = GClientGeocoder.getLatLng('1600 Pennsylvania Avenue NW Washington, DC 20500');
alert(point);
我试图从谷歌地图API获取经度和纬度值,但它似乎没有返回任何值。我的语法有问题吗?谷歌地图 - 使用地理编码器获取长/纬度为javascript
var point = GClientGeocoder.getLatLng('1600 Pennsylvania Avenue NW Washington, DC 20500');
alert(point);
该作品(前提是你要有正确的API密钥,受2500个请求/天的速度极限):
address_string = '1600 Pennsylvania Avenue NW Washington, DC 20500';
geocoder = new GClientGeocoder();
geocoder.getLatLng(
address_string,
function(point) {
if (point !== null) {
alert(point); // or do whatever else with it
} else {
// error - not found, over limit, etc.
}
}
);
你似乎被调用的GClientGeocoder
功能,在您需要创建一个new GClientGeocoder()
并致电其函数。
试试看喜欢:
geocoder = new GClientGeocoder();
point = geocoder.getLatLng(address)
好像你正在使用谷歌地图的V2;如果您有兴趣使用V3(因为谷歌已经正式弃用第2版),你可以做这样的事情:
var mygc = new google.maps.Geocoder();
mygc.geocode({'address' : '1600 Pennsylvania Avenue NW Washington, DC 20500'}, function(results, status){
console.log("latitude : " + results[0].geometry.location.lat());
console.log("longitude : " + results[0].geometry.location.lng());
});
它类似于除了其他例子:
Google API docs有关于v3的更多详细信息。干杯!
您是否收到任何错误讯息? – 2010-09-10 12:58:01