我使用 google.loader.ClientLocation
进行了一些测试,来源于:
但是我的这个测试返回了 null:
if (google.loader.ClientLocation)
当Google无法找到IP信息时的行为。
我在StackOverflow上搜索了很多相关问题,但没有好的答案。
我搜索了网络并看到了以下2个链接:
- https://groups.google.com/forum/?fromgroups=#!topic/google-ajax-search-api/8q_oG-Y9fp8
- http://code.google.com/p/google-ajax-apis/issues/detail?id=586
- https://groups.google.com/forum/?fromgroups=#!topic/google-ajax-search-api/rzoIh4RrtOQ
它们似乎都在说应该使用导航器HTML地理位置。
Google API的文档不再提及它。
请问Google google.loader.clientlocation是否仍在工作?
我的代码如下:
<html>
<head>
<script type="text/javascript" src="http://www.google.com/jsapi"></script>
</head>
<body>
<script type="text/javascript">
function geoTest() {
if (google.loader.ClientLocation) {
var latitude = google.loader.ClientLocation.latitude;
var longitude = google.loader.ClientLocation.longitude;
var city = google.loader.ClientLocation.address.city;
var country = google.loader.ClientLocation.address.country;
var country_code = google.loader.ClientLocation.address.country_code;
var region = google.loader.ClientLocation.address.region;
var text = 'Your Location<br /><br />Latitude: ' + latitude + '<br />Longitude: ' + longitude + '<br />City: ' + city + '<br />Country: ' + country + '<br />Country Code: ' + country_code + '<br />Region: ' + region;
} else {
var text = 'Google was not able to detect your location';
}
document.write(text);
}
geoTest();
</script>
</body>
</html>
google.loader.ClientLocation
将是undefined
,但它是null
)。我没有看到任何官方声明说它不再受支持,新闻组内的评论不是官方声明。 - Dr.Mollehttps://www.google.com/jsapi
中,它读取google.loader.ClientLocation = null;
。但是,虽然ClientLocation
被初始化为null
,但它既没有被调用也没有被分配给代码中的其他任何地方,因此每当调用google.loader.ClientLocation
时,它都将返回 null。 - zeantsoi