Day21 - Geolocation 中文指南
作者:©Mrlin(史密斯林)
简介:学习记录,用于记录在CSDN课程中的学习内容。
课程:30天完成30个JS原生开发项目挑战视频教程。JavaScript30 是 Wes Bos 推出的一个 30 天挑战。项目免费提供了 30 个视频教程、30 个挑战的起始文档和 30 个挑战解决方案源代码。目的是帮助人们用纯 JavaScript 来写东西,不借助框架和库,也不使用编译器和引用。
第21天的目的是练习NavigatorGeolocation.geolocation
这一webAPI的使用,通过使用此API可以访问到设备的位置信息。这允许网站或应用根据用户的位置提供个性化结果。
UI源码
1 |
|
JS源码
1 | <script> |
可以看到只要通过调用navigator.geolocation
的watchPosition
方法就可以获取到位置的信息。
在此获取到的信息为data
,以回调函数的形式返回,当获取到位置信息之后,在动态的修改页面中speed
显示的内容和指南针旋转的角度。
Geolocation.watchPosition()
Geolocation.watchPosition()
用于注册监听器,在设备的地理位置发生改变的时候自动被调用。也可以选择特定的错误处理函数。
该方法会返回一个 ID,如要取消监听可以通过 Geolocation.clearWatch()
传入该 ID 实现取消的目的。
- 语法
1 | id = navigator.geolocation.watchPosition(success[, error[, options]]) |
参数
- success:成功时候的回调函数, 同时传入一个 Position 对象当作参数。
- error(可选):失败时候的回调函数,可选, 会传入一个 PositionError 对象当作参数。
- options(可选):一个可选的 PositionOptions 对象。
案例
1 | var id, target, options; |