Функция Javascript - Преобразование кода геолокации в адрес улицы - PullRequest
5 голосов
/ 21 января 2012

Я ищу функцию javascript или библиотеку jquery для преобразования кода геолокации (например, 42.2342,32.23452) в уличный адрес

Например.

    navigator.geolocation.getCurrentPosition(
      function(pos) {
        $("#lat_field").val(pos.coords.latitude);
        $("#long_field").val(pos.coords.longitude);
      }
    );

Вот URL Google API, чтобы получить адресные данные

http://maps.googleapis.com/maps/api/geocode/json?latlng=41.03531125,29.0124264&sensor=false

Я хочу увидеть "отформатированный адрес": "Hacı Hesna Hatun Mh., Paşa Limanı Cd 2-26, 34674 Стамбул, Türkiye",

    navigator.geolocation.getCurrentPosition(
      function(pos) {
        $("#lat_field").val(pos.coords.latitude);
        $("#long_field").val(pos.coords.longitude);
        $("#adress_data").getaddrfromlatlong(pos.coords.latitude,pos.coords.longitude)
      }
    );

Эта функция должна быть как? `` Getaddrfromlatlong ()

Ответы [ 2 ]

8 голосов
/ 21 января 2012

Попробуйте это:

<script src="http://maps.google.com/maps/api/js?sensor=false"></script>
<script type="text/javascript">     
   var geocoder = new google.maps.Geocoder();
   var latLng = new google.maps.LatLng(41.03531125,29.0124264);

   if (geocoder) {
      geocoder.geocode({ 'latLng': latLng}, function (results, status) {
         if (status == google.maps.GeocoderStatus.OK) {
            console.log(results[0].formatted_address);
         }
         else {
            console.log("Geocoding failed: " + status);
         }
      });
   }    
</script>
0 голосов
/ 21 января 2012

Я не делал этого в Javascript, но сделал что-то подобное, используя веб-сервис карт Google для загрузки XML и анализа данных из него. У них также есть интерфейс JSON, который, скорее всего, вы захотите использовать. Это действительно довольно тривиально (скачайте данные, затем попробуйте), поэтому я не думаю, что вам понадобится предварительно написанная библиотека для этого.

...