Городской метод работает только в Firefox? например, если я хочу напечатать город пользователя:

  if (navigator.geolocation)
  {
    navigator.geolocation.getCurrentPosition(function(location) {
      document.write(location.address.city);
    });
  }

Если это правда, как лучше найти город пользователей? Возьмите lat и long и вставьте его в API местоположения Google?

2
agentargo 25 Авг 2010 в 19:52

3 ответа

Лучший ответ

Да, location.address.city работает только в Firefox. Я только что подтвердил, что ни Safari, ни Chrome не поддерживают свойство address - оба возвращают 'undefined'.

Вы предлагаете извлечь город пользователя, подключив lat / long к API геокодирования Google должно быть работоспособным решением.

2
Omninate 6 Май 2011 в 11:24

Нет, он работает во всех основных браузерах.

Посмотрите здесь пример, который, кажется, выполняет то, что вы предложили

var latlng = new google.maps.LatLng(position.coords.latitude, position.coords.longitude);

Кроме того, простой поиск в Google дал бы вам ту же информацию в ~ 15 секунд :)

-3
asymmetric 25 Авг 2010 в 16:01

Вы можете использовать этот код:

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)
});

Для получения дополнительной информации, пожалуйста, ознакомьтесь с ссылкой на код Google..

0
PeeHaa 17 Янв 2012 в 00:36