城市方法仅适用于Firefox吗?例如,如果我想打印用户的城市:
if (navigator.geolocation)
{
navigator.geolocation.getCurrentPosition(function(location) {
document.write(location.address.city);
});
}
如果是这样,找到用户城市的最佳方式是什么?拿lat和long并将其插入google的位置api?
答案 0 :(得分:2)
是的,location.address.city仅适用于Firefox。我刚刚确认Safari或Chrome都不支持地址属性 - 都返回'undefined'。
您建议通过将lat / long插入Google's Geocoding API来检索用户的城市应该是一个可行的解决方案。
答案 1 :(得分:0)
您可以使用此代码:
var latlng = new google.maps.LatLng(position.coords.latitude, position.coords.longitude);
var geocoder = new google.maps.Geocoder()
geocoder.geocode({location:latlng},function(result){
document.write(resul.address_components.long_name)
});
有关详细信息,请查看the reference at google code。
答案 2 :(得分:-3)
不,它适用于all major browsers。
查看here的示例,它似乎做了您的建议
var latlng = new google.maps.LatLng(position.coords.latitude, position.coords.longitude);
另外,一个简单的谷歌搜索会在〜15秒内给你相同的信息:)