地理位置 getCurrentPosition() API



HTML 地理位置 **getCurrentPosition()** 方法检索设备的当前地理位置。位置表示为一组地理坐标,以及关于航向和速度的信息。位置信息以 Position 对象的形式返回。

语法

以下是 HTML 地理位置 **getCurrentPosition()** 方法的语法:

getCurrentPosition(showLocation, ErrorHandler, options);

参数

HTML 地理位置 **getCurrentPosition()** 方法接受以下参数:

  • **showLocation** - 指定检索位置信息的回调方法。此方法以异步方式调用,并使用一个对应于 **Position** 对象的对象,该对象存储返回的位置信息。

  • **ErrorHandler** - 此可选参数指定在处理异步调用时发生错误时调用的回调方法。此方法使用存储返回错误信息的 **PositionError** 对象进行调用。

  • **options** - 此可选参数指定一组用于检索位置信息的选项。您可以指定 (a) 返回的位置信息的精度 (b) 检索位置信息的时间超时,以及 (c) 使用缓存的位置信息。

返回值

getCurrentPosition() 方法不返回值。

示例

让我们看看 getCurrentPosition() 方法的一个示例:

<!DOCTYPE HTML>

<html>
   <head>
   
      <script type = "text/javascript">
		
         function showLocation(position) {
            var latitude = position.coords.latitude;
            var longitude = position.coords.longitude;
            alert("Latitude : " + latitude + " Longitude: " + longitude);
         }

         function errorHandler(err) {
            if(err.code == 1) {
               alert("Error: Access is denied!");
            } else if( err.code == 2) {
               alert("Error: Position is unavailable!");
            }
         }
			
         function getLocation() {

            if(navigator.geolocation) {
               
               // timeout at 60000 milliseconds (60 seconds)
               var options = {timeout:60000};
               navigator.geolocation.getCurrentPosition(showLocation, errorHandler, options);
            } else {
               alert("Sorry, browser does not support geolocation!");
            }
         }
			
      </script>
   </head>
   <body>
      
      <form>
         <input type = "button" onclick = "getLocation();" value = "Get Location"/>
      </form>
      
   </body>
</html>

当我们执行以上代码时,它将生成一个按钮,点击该按钮将提示用户设备的位置。

html_geolocation.htm
广告