8wDlpd.png
8wDFp9.png
8wDEOx.png
8wDMfH.png
8wDKte.png

使用地理位置获取城市名称

Dai 1月前

71 0

我设法使用基于 HTML 的地理位置获取用户的纬度和经度。//检查浏览器是否支持 W3C 地理位置 APIif (navigator.geolocation) { navigator.geolocation.

我设法使用基于 HTML 的地理定位获取用户的纬度和经度。

//Check if browser supports W3C Geolocation API
if (navigator.geolocation) {
    navigator.geolocation.getCurrentPosition(successFunction, errorFunction);
} 
//Get latitude and longitude;
function successFunction(position) {
    var lat = position.coords.latitude;
    var long = position.coords.longitude;
}

我想显示城市名称,似乎获取它的唯一方法是使用反向地理定位 API。我阅读了 Google 的反向地理定位文档,但我不知道如何在我的网站上获取输出。

我不知道如何使用这个: "http://maps.googleapis.com/maps/api/geocode/json?latlng='+lat+','+long+'&sensor=true" 在页面上显示城市名称。

我怎样才能实现这个目标?

帖子版权声明 1、本帖标题:使用地理位置获取城市名称
    本站网址:http://xjnalaquan.com/
2、本网站的资源部分来源于网络,如有侵权,请联系站长进行删除处理。
3、会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。
4、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
5、站长邮箱:yeweds@126.com 除非注明,本帖由Dai在本站《css》版块原创发布, 转载请注明出处!
最新回复 (0)
  • 这是对我来说更新的工作版本,它将获取城市/城镇,看起来 JSON 响应中的某些字段已被修改。请参阅此问题的先前答案。(感谢 Michal 和另一个参考资料: 链接

    var geocoder;
    
    if (navigator.geolocation) {
      navigator.geolocation.getCurrentPosition(successFunction, errorFunction);
    }
    // Get the latitude and the longitude;
    function successFunction(position) {
      var lat = position.coords.latitude;
      var lng = position.coords.longitude;
      codeLatLng(lat, lng);
    }
    
    function errorFunction() {
      alert("Geocoder failed");
    }
    
    function initialize() {
      geocoder = new google.maps.Geocoder();
    
    }
    
    function codeLatLng(lat, lng) {
      var latlng = new google.maps.LatLng(lat, lng);
      geocoder.geocode({latLng: latlng}, function(results, status) {
        if (status == google.maps.GeocoderStatus.OK) {
          if (results[1]) {
            var arrAddress = results;
            console.log(results);
            $.each(arrAddress, function(i, address_component) {
              if (address_component.types[0] == "locality") {
                console.log("City: " + address_component.address_components[0].long_name);
                itemLocality = address_component.address_components[0].long_name;
              }
            });
          } else {
            alert("No results found");
          }
        } else {
          alert("Geocoder failed due to: " + status);
        }
      });
    }
    
返回
作者最近主题: