地理定位 api javascript

Posted

技术标签:

【中文标题】地理定位 api javascript【英文标题】:Geolocation 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 是异步的,所以你不能这样做 【参考方案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中,我当前的经纬度使用上面的代码正确显示。不要忘记添加

以上是关于地理定位 api javascript的主要内容,如果未能解决你的问题,请参考以下文章

温故而知新-Javascript使用地理定位

带有地理围栏的 html5 地理定位 API

谷歌在服务器中映射 javascript API“地理定位服务失败”,但在本地工作

W3C 地理定位 API 在 Safari 5 上不起作用

有没有办法重新询问用户获取他的位置的权限,或者使用带有 javascript 的地理定位 API 删除旧设置?

在 Rails 上使用 javascript 和 ruby​​ 进行地理定位