【问题标题】:Geolocation api javascript地理定位 api javascript
【发布时间】:2014-04-21 12:06:35
【问题描述】:

我尝试提醒我的经纬度,但它不起作用。 我创建了一个全局变量,并在函数中更改了这个变量。我的其他函数没有看到这个全局变量。不知道是什么错误。

var latitdue;
var longitude;
navigator.geolocation.getCurrentPosition(     
function coords(position) {
    longitude = position.coords.longitude;          
    latitude = position.coords.latitude;
}, function (error) {
    alert("Error: " + error.code);
},
{
    enableHighAccuracy : false,     
    timeout : 10000,                
    maximumAge : 1000           
});
function a(){
    alert(longitude, latitude);
}
a(); 

【问题讨论】:

  • geoloaction API 是异步的,所以你不能这样做

标签: javascript api variables geolocation global


【解决方案1】:

这是一个拼写错误“纬度”而不是 var latitdue 改变 变量纬度; 到 变量纬度

并“允许”浏览器栏上的弹出窗口或提示以访问计算机的位置

【讨论】:

    【解决方案2】:

    试试下面的代码:

                <script type="text/javascript">
                var latitude;
                var longitude;
    
                function a(){
    
                if (navigator.geolocation)
                 {
                    navigator.geolocation.getCurrentPosition(     
                    function coords(position) {
                        longitude = position.coords.longitude;          
                        latitude = position.coords.latitude;
                        alert("Lat Long is : " + longitude +"," + latitude);
                    }, function (error) {
                        alert("Error: " + error.code);
                    },
                    {
                        enableHighAccuracy : true,     
                        timeout : 10000,                
                        maximumAge : 1000           
                    });
    
                   }
                   else
                   {
                    alert ("GEOLOCATION NOT SUPPORTED....");
                   }
                }
                //a(); 
    
    
    
                </script>
                </head>
                <body onLoad="a();">
                TESTING GEOLOCATION
                </body>
    

    加载成功后必须调用该方法。

    另外,允许共享位置。

    【讨论】:

    • 在 IE8 中,GEOLOCATION NOT SUPPORTED.... 是响应。在Firefox中,我当前的经纬度使用上面的代码正确显示。不要忘记添加
    猜你喜欢
    • 2018-08-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-04
    • 1970-01-01
    • 1970-01-01
    • 2017-12-09
    • 1970-01-01
    • 2017-12-02
    相关资源
    最近更新 更多