资讯专栏INFORMATION COLUMN

html5知识点补充—GeoLocation API位置感知

Markxu / 2391人阅读

摘要:此项定义缓存的最长时限。浏览器返回位置信息的最大超时,以毫秒为单位。后台任务会获取当前位置将位置发送给成功回调函数设置定时器监视位置。定时器每次触发都会获取一个新的位置,并且对位置进行比较确认是否存在重大区别。可选用于处理任何错误的函数。

简单使用getCurrentPosition获取当前位置

Geolocation API的基本功能是查询浏览器当前所处的位置。getCurrentPosition方法能够通过JavaScript异步调用为你提供这样的信息。已通常JavaScript的同步运行或程序流程不同的是,这里的调用从本质来说就是异步的。通过异步函数的调用,JavaScript在后台运行该调用,并在完成时返回给某个函数。异步调用的形式能使查询不阻塞页面其他部分的运行。

getCurrentPosition方法获取浏览器的当前位置。它接受一个必须参数(一个成功时的回调函数)和两个可选参数(一个错误回调函数和一个位置选项对象):

getCurrentPositon(successCallback [,errorCallback] [,positionOptions])

getCurrentPosition包括下列参数。

successCallback: 处理返回坐标的回调

errorCallback: (可选) 处理任何错误的函数

options: (可选) options对象用来处理如何获取位置

因为getCurrentPosition是异步的,所以它需要知道成功返回时运行哪个函数并为潜在的错误准备处理函数。示例如下所示:




    
    Geolocation


点击这个按钮,获得您的坐标:

使用PositionOptions确定距离

为了更好控制位置信息,你需要使用getCurrentPosition方法的第三个参数PositionOptions

PositionOptions做为一个对象传递给getCurrentPosition方法,它允许你对该方法的行为进行一定的控制。对于此应用类型,该参数能够有一定的帮助作用。例如,如果应用为基于位置的餐厅移动应用,那么通常返回的位置精确范围太大、无法满足需求。getCurrentPositionPositionOptions能够设置三种选项,如下所示:

enableHighAccuracy: 布尔值,为真时告诉浏览器希望得到设备能够提供的最精确的wehi只。默认不开启。

maximunAge: 浏览器会缓存最近获取的的位置以节约电量。此项定义缓存的最长时限。以毫秒为单位,默认为0。

timeout: 浏览器返回位置信息的最大超时,以毫秒为单位。默认值为0。

使用watchPositon跟随移动中的位置

watchPosition方法与getCurrentPositon雷同,接受同样的参数。在调用watchPosition后,浏览器会创建一个后台任务并返回一个引用ID用于监视进程。后台任务会获取当前位置、将位置发送给成功回调函数、设置定时器监视位置。定时器每次触发都会获取一个新的位置,并且对位置进行比较确认是否存在“重大”区别。如果新位置与上次位置差别很大,则会使用新位置信息调用成功函数。该进程将一直运行知道使用监视ID调用clearWatch,或者窗口关闭。下面分别是wathcPositionclearWatch方法的接口。

long watchPosition(successCallback [, errorCallback] [, positionOptions])

参数介绍如下:

successCallback: 浏览器确定新位置后,传入位置对象并调用的函数。

errorCallback: (可选) 用于处理任何错误的函数。

options: (可选) 处理如何获取位置的选项对象。

void clearWatch(watchID)

参数介绍如下:

watchId : 需要终止的监视进程的长整形ID。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/55286.html

相关文章

  • html5识点补充GeoLocation API位置感知

    摘要:此项定义缓存的最长时限。浏览器返回位置信息的最大超时,以毫秒为单位。后台任务会获取当前位置将位置发送给成功回调函数设置定时器监视位置。定时器每次触发都会获取一个新的位置,并且对位置进行比较确认是否存在重大区别。可选用于处理任何错误的函数。 简单使用getCurrentPosition获取当前位置 Geolocation API的基本功能是查询浏览器当前所处的位置。getCurrentP...

    shevy 评论0 收藏0
  • HTML5 Geolocation学习

    摘要:如果应用程序不再需要接受有关用户的持续位置更新,则只需调用函数,如下所示表示一个唯一的监视请求以便将来取消监视。 GeolocationAPI学习,我写的挺枯燥的,直接跳到最后看示例。 5.1 位置信息 HTML5 Geolocation API的使用方法相当简单。请求一个位置信息,如果用户同意,浏览器就会返回位置信息,该位置信息是通过支持HTML5地理定位功能的底层设备(手机、笔记本...

    xiyang 评论0 收藏0
  • HTML5 Geolocation API的正确使用

    摘要:是标准下的一个利用它可以获取设备的当前位置信息坐标,此具有三个方法和,其中最常用的是方法,剩下两个方法需要搭配使用使用方法浏览器兼容性检测该通过对象发布,只有在此对象存在的情况下,才可以使用它的地理定位服务,检测方法如下定位代码写在这里获取 Geolocation是HTML5标准下的一个Web API,利用它可以获取设备的当前位置信息(坐标),此API具有三个方法:getCurrent...

    jubincn 评论0 收藏0
  • HTML5 Geolocation API的正确使用

    摘要:是标准下的一个利用它可以获取设备的当前位置信息坐标,此具有三个方法和,其中最常用的是方法,剩下两个方法需要搭配使用使用方法浏览器兼容性检测该通过对象发布,只有在此对象存在的情况下,才可以使用它的地理定位服务,检测方法如下定位代码写在这里获取 Geolocation是HTML5标准下的一个Web API,利用它可以获取设备的当前位置信息(坐标),此API具有三个方法:getCurrent...

    simon_chen 评论0 收藏0
  • HTML5 —— Geolocation API

    摘要:因为浏览器的支持度可能参差不齐,因此需要判断当前浏览器是否支持。您的浏览器不支持的请更换浏览器获取失败的回调函数位置服务被拒绝暂时获取不到位置信息获取信息超时未知错误回调请求成功后返回的是一个对象。 Geolocation 地理位置(Geolocation)是 HTML5 的重要特性之一,提供了确定用户位置的功能,借助这个特性能够开发基于位置信息的应用。 在 访问位置信息前,浏览器都会...

    Karuru 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<