Я провел несколько тестов, используя google.loader.ClientLocation из:
Но я получаю ноль для теста:
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
). Я не видел официального объявления о том, что он больше не поддерживается, комментарий внутри группы новостей не является официальным заявлением. - person Dr.Molle   schedule 07.01.2013https://www.google.com/jsapi
он читаетgoogle.loader.ClientLocation = null;
. Но хотяClientLocation
инициализируется значениемnull
, он не вызывается и не назначается иным образом где-либо еще в коде, поэтому вызовgoogle.loader.ClientLocation
, по-видимому, будет возвращать null при каждом вызове. - person zeantsoi   schedule 08.01.2013