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

时间:2012-01-21 07:10:55

标签: javascript google-maps jquery jquery-mobile geolocation

我正在寻找一个javascript函数或jquery库来将地理位置代码(例如42.2342,32.23452)转换为街道地址

例如。

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

以下是获取地址数据的google api网址

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

我想看“formatted_address”:“HacıHesnaHatun Mh。,PaşaLimanıCd2-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 个答案:

答案 0 :(得分: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>

答案 1 :(得分:0)

我还没有在Javascript中完成它,但我使用谷歌地图网络服务做了类似的事情来下载XML并解析数据。它们也有一个JSON接口,这可能是你想要使用的。它确实相当简单(下载数据,然后grep它)所以我认为你不需要预先编写的库。