JavaScript函数 - 将地理位置代码转换为街道地址

5
我正在寻找一个JavaScript函数或jQuery库,将地理位置代码(例如42.2342,32.23452)转换为街道地址。
例如。
    navigator.geolocation.getCurrentPosition(
      function(pos) {
        $("#lat_field").val(pos.coords.latitude);
        $("#long_field").val(pos.coords.longitude);
      }
    );

这是一个谷歌API的URL,用于获取地址数据。 http://maps.googleapis.com/maps/api/geocode/json?latlng=41.03531125,29.0124264&sensor=false 我想看到 "formatted_address" : "Hacı Hesna Hatun Mh., Paşa Limanı Cd 2-26, 34674 Istanbul, 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

试试这个:

<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 下面的绿色勾号,如果翻译正确,谢谢。 - Greg

0

我没有用JavaScript做过这个,但我使用了Google Maps Web服务来下载XML并解析其中的数据,做了类似的事情。他们也有一个JSON接口,这可能是你想要使用的。这实际上相当简单(下载数据,然后grep它),所以我认为你不需要预先编写库。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接