基于HTML5的移动Web应用——Geolocation地理定位

《HTML5移动Web开发指南》读后笔记 阅读详情


地理位置一般是用来描述地理事物的空间关系。通常情况下,用经纬度可以准确地描述地理位置。而通常所说的地理定位也是找到该地理位置的经纬度作为坐标来进行定位的。在PC端,通常使用IP来定位该IP用户的位置,移动端定位有多种方式,最准确的是GPS。在Web开发中,Geolocation API (地理位置应用程序接口)提供了准确知道浏览器用户当前位置的功能。本节将对Geolocation地理定位进行详细讲解。


Geolocation 简介

Geolocation API是通过获取地理位置的经纬度来进行定位的,它封装了获取位置的技术细节,开发者不用关心位置信息究竟从何而来,极大地简化了应用的开发难度。

Geolocation API已经得到大部分PC端的浏览器支持。移动Web浏览器也能很好地支持Geolocation API。PC端主流浏览器对Geolocation的支持情况如表所示。


表 PC 浏览器对Geolocation的支持

IE
Firefox
Safari
Chrome
Opera
IE9+
支持
支持
支持
支持

移动端Web浏览器对Geolocation的支持情况如表所示。


表 移动端浏览 器对Geolocation的支持

ios Safari
Android Browser
Opera Mobile
Opera Mini
BlackBerry Webkit
支持
支持
支持
不支持
支持

从上面两个表格可以看出Geolocation API的支持情况,随着技术的更新迭代,Geo-location API的支持情况会更加完善。


获取当前位置

Geolocation API的使用非常简单,navigator. geolocation 对象提供了可以公开访问地理位置的方法,其中navigator为浏览器内置对象。检测浏览器是否支持定位API,只需要CurrentPosition()被调用时会发起一个异步请求,浏览器会调用系统底层的硬件(如GPS)来更新当前的位置信息,当信息获取到之后会在回调函数中传入position对象。

position对象包含两个属性:一个是coords (坐标),它是一个Coordiante对象,包含当前位置信息;另一个是timestamp,表示获取到位置的时间戳。

coordiante对象包含包括经纬度在内的一系列信息,具体如下:

(1) latitude: 一个十进制表示的纬度坐标。
(2) longitude: 一个十进制表示经度的坐标。
(3) altitude: 海拔高度(以米为单位,如果是5,表示精确到5 m范围)。
(4) accuracy: 当前经纬度信息的精度(以米为单位)。
(5) altitudeAccuracy: 当前海拔高度的精度。
(6) heading:代表当前设备的朝向,该值是以弧度为单位,指示了按顺时针方向相对于正北的度数(例如: heading 为270时表示正西方)。

下面通过一个案例来演示如何使用Geolocation API获取当前位置,代码如示例所示。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script>
        function getMyPosition(){
            if(window.navigator.geolocation){
                //获取当前位置..
                alert("正在获取您的位置.");
                //如果获取位置成功,会调用名字为successPosition 的方法.
                navigator.geolocation.getCurrentPosition
                (successPosition,errorPosition);
            }else{
                alert("您当前的浏览器不支持..");
            }
        }
        function successPosition(position){
            var jd=position.coords.longitude;//经度
            var wd=position.coords.latitude; //纬度
            alert(jd+","+wd);
        }
        //如果没有获取到位置,就会调用这个方法
        function errorPosition(){
            alert("获取位置失败.");
        }
        getMyPosition();
    </script>
</head>
<body>
</body>
</html>

Geo Location 地理位置信息小结 一、通过 IP 地址获得用户的地理位置信息 二、通过 W3C Geo API 获得用户地理位置 三、移动领域 阅读详情

相关推荐

HTML5 地理定位

HTML5地理定位功能为Web应用提供了丰富的可能性,使得Web应用能够更加贴近用户需求。了解HTML5地理定位的相关知识,有助于开发出更加智能、个性化的Web应用。

csbysj2020 588

Html5地理定位的使用

Html5地图组件的使用(以高德地图为例)

io_123io_123的博客 2383

ArcGIS利用模型构建器批量导出nc文件中的不同波段数据

ArcGIS利用模型构建器批量导出nc文件中的不同波段数据

Yuanbaokk的博客 7252

html5 获取gps坐标,HTML5-GPS定位

原标题:HTML5-GPS定位声明:本栏目所使用的素材都是凯哥学堂VIP学员所写,学员有权匿名,对文章有最终解释权;凯哥学堂旨在促进VIP学员互相学习的基础上公开笔记。GPS定位在html5中有一个GeolocationAPI,这个API用于通过GPS获得用户的地理位置,也就是俗称的GPS定位。鉴于该特性可能侵犯用户的隐私,除非用户同意,否则用户位置信息是不可用的。需要通过getCurrentPo...

weixin_42311672的博客 1425

从零构建:ESP32S3无线DAP-Link调试器的硬件与软件协同设计

本文详细介绍了基于ESP32S3的无线DAP-Link调试器的硬件与软件协同设计,涵盖关键元器件选型、无线通信协议优化、双核任务处理及低功耗调试方案。通过ESP-NOW协议实现低延迟无线调试,结合USB协议栈与双核协同,为嵌入式开发提供高效灵活的调试解决方案。

gitlab7runner的博客 857

攻防实战之Confluence后利用

这边管理员密码是密文加密在数据库中,解不开,因此解决的思路是将管理员用户密码修改为已知明文密码的密文(这边不能直接在数据库中添加字段,关系型数据库在单表中添加一条字段可能会出现问题),登录上后台以后,添加用户并加入管理员组,最后将管理员密码还原。Confluence的后利用主要问题在于在Linux中搭建时,默认是Confluence用户权限,如下图所示,而confluence在linux中是没有写权限的,这也就是为什么有些人发现可以执行命令但是shell写不进去。至此admin的密码被改为了123123。

weixin_39251927的博客 2716

html使用定位需要注意什么软件,HTML5的Geolocation地理位置定位API使用教程

在手持设备如此普遍的今天,位置信息对于应用程序来讲是极其重要的,打车应用可以根据用户的位置信息呼叫附近的车辆,团购软件可以根据当前的位置推荐附近的影院和美食,地图应用可以根据用户的位置快速规划到目的地的路线,可以说位置信息对于移动应用是不可或缺的。为了顺应这个潮流,HTML5为我们提供了Geolocation库,有了它我们就能够在Web应用中轻而易举地实现上述这些功能。那么今天我就为大家介绍一下这...

weixin_32120857的博客 506

ROS与Qt5人机交互界面开发:添加rviz显示界面

最后,点击"完成"以创建新的Qt5应用程序项目。通过结合ROS和Qt5,您可以创建强大的人机交互界面,以实现丰富的机器人控制和数据可视化。在本教程中,我们将在主窗口中创建一个简单的按钮,用于启动rviz显示界面。在Qt Creator的槽函数编辑器中,为按钮添加一个槽函数,该函数将在单击按钮时调用。在上面的代码中,我们使用QProcess类启动了一个新的进程,并执行"rviz"命令来启动rviz显示界面。当您单击Qt5应用程序中的按钮时,将会启动一个新的rviz窗口,显示机器人数据的可视化界面。

CodeJolt的博客 2066

HTML5 Geolocation(地理定位)

HTML5 Geolocation(地理定位)用于定位用户的位置。

guoruibin123的博客 263

Autosar PWM模块的配置和使用

在上面的代码中,我们首先配置了PWM的初始化参数,包括频率和分辨率。GPIO Driver:由于PWM信号需要输出到特定的引脚上,因此我们还需要使用GPIO驱动程序来控制引脚的状态。通过合理配置和应用PWM模块,我们可以实现对汽车电子系统中各种功能的精确控制,从而提高汽车性能和用户体验。在实际应用中,我们可以根据需要进行更多的配置和调整,以实现灵活的PWM控制。PWM Driver:这是主要的PWM驱动程序,负责产生PWM信号并输出到相应的引脚上。接下来,我们需要配置PWM模块的参数。

TcData的博客 679

华为OD机试双机位C卷:采购订单 (Py/Java/C/C++/Js/Go)

华为OD机试双机位C卷 采购订单,提供C语言、Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解,并提供在线OJ模拟做题。华为OD机试真题【采购订单】

qq_45776114的博客 3534

HTML 五十六 HTML5 地理定位

HTML5 Geolocation(地理定位)用于定位用户的位置。 <!DOCTYPE html> <html> <body> <p id="demo">点击这个按钮,获得您的位置:</p> <button onclick="getLocation()">试一下</button> <div id="mapholder"></div> <script src="http://maps.goog

W_H_M_2018的博客 1181

基于STM32L4XX的环境光传感器(VCNL4040M3OE)应用程序设计

• 集成模块:红外发射器(IRED)、环境光传感器(ALS)、接近传感器(PS)及信号调理IC。#define VCNL4040_I2C_ADDR (0x60 << 1) // 7位地址左移一位。// 组合成16位值。// I2C总线句柄。// 设置参数:ALS集成时间160ms,中断禁止,ALS功能开启。// 设置参数:PS工作频率80Hz,开红外二极管,PS功能开启。// 初始化I2C外设。• 输出类型:I2C总线(ALS/PS)// 2. 配置环境光传感器 (ALS) 并启动。

myron6688的博客 143

《HTML5移动Web开发指南》读书笔记

《HTML5移动Web开发指南》 作者:唐俊开 Chapter 1:《移动互联网时代的web技术》 1.html5对移动web的支持 (1)canvas绘图:   canvas绘图很强大,以后肯定会用到很多,博客园有使用方法的文章,附上链接:   http://www.cnblogs.com/tim-li/archive/2012/08/06/2580252.html ...

aske42086的博客 260

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

青少年编程与数学 02-005 移动Web编程基础 09课题、地理定位

本文介绍了地理定位技术及其在移动Web编程中的应用。地理定位通过经纬度坐标确定物体或用户位置,广泛应用于导航、移动服务、紧急服务等领域。移动端地理定位可通过HTML5 Geolocation API实现,结合多种定位方法提高精度。文章还讨论了使用百度地图和高德地图进行地理定位的步骤,包括集成SDK、地图展示、定位功能、选点功能以及地点查询和反向地理编码。使用这些服务时,需注意用户隐私和数据安全,遵守API使用条款。

明月看潮生的博客 1277

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

HTML5中的地理定位API(Geolocation)

地理定位API用于定位用户的地理位置。

但愿人长久 千里共婵娟 4627

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

**标题:发散创新:深度探索Geolocation API的应用与实现**

Geolocation API作为一种提供地理位置信息的接口,正日益受到开发者的关注。通过实例演示,我们将深入探讨Geolocation API如何助力位置服务的发展,并带领读者了解其在现代Web和移动应用中的重要作用。HTML5 Geolocation API:对于Web应用,可以使用HTML5提供的Geolocation API来获取用户位置信息。通过调用相关API,应用程序可以获取到设备的经纬度、海拔等信息,从而实现一系列位置相关的功能。三、Geolocation API的应用场景。

aileYYDS的博客 243

html5定位并在百度地图上显示

在开发移动端 web 或者webapp时,使用百度地图 API 的过程中,经常需要通过手机定位获取当前位置并在地图上居中显示出来,这就需要用到html5的地理定位功能。 navigator.geolocation.getCurrentPosition(callback); 在获取坐标成功之后会执行回调函数 callback; callback 方法的参数就是获取到的坐标点;然...

244

手机互动网页项目总结(转)

目录: 一、项目地址 二、布局1、按屏滚动会碰到什么问题?2、flexbox会碰到什么问题?3、fixed定位需要慎用。 三、动画1、CSS动画与Canvas动画性能优劣分析2、当缩放动画碰上硬件加速3、动画由Javascript来维护还是css维护的思考 四、特性1、如何解决音频播放预加载与延时的问题2、重力感应3、启动原生应用4、地理定位 五、其它1、字体图标应用设计环节的打通2、当...

weixin_34375251的博客 276

小强的HTML5移动开发之路(18)——HTML5地理定位

在前面的《小强的HTML5移动开发之路(2)——HTML5的新特性》中介绍了关于HTML5的地理定位功能,这一篇我们来详细了解一下怎么使用该功能。 HTML5 Geolocation API用于获得用户的地理位置。 鉴于该特性可能侵犯用户的隐私,除非用户同意,否则用户位置信息是不可用的,在使用该功能的时候浏览器会弹出提醒框。 一、浏览器的支持 Internet Explorer 9、F

水寒 7103

Mui 获取当前位置及在地图上显示

最近公司急缺人手、就把app前后台开发压给我一个人;然而我又不懂安卓、所以只能用HBuilder来开发app、使用的是国内的MUI框架! //获取当前位置 var currentLon,currentLat,map; mui.plusReady(function() { plus.geolocation.getCurrentPosition(translatePoint,function(e){ mui.toast("异常:" + e.

xieyanzeng9804的博客 1万+

HTML5 从入门到精通(七):掌握地理定位与设备方向 —— 拓展移动 Web 应用功能

创建一款基于 HTML5 的 AR 导航助手,用户授权地理位置和设备方向后,应用显示周围环境的虚拟叠加信息,如附近地标、方向指引箭头等,并根据设备朝向动态更新显示内容。本文深入解析了 HTML5 地理定位 API 和设备方向 API,从技术原理、操作流程、应用场景实例到选型指南和注意事项,全方位赋能开发者,助力打造与物理世界紧密相连的移动 Web 应用。

加入“Super Entity”,与全能开发团队共探AI智能体与数字人项目,开启前沿技术之旅。 936
上一篇: python Mqtt 的安装及使用
下一篇: 详解回归测试
Meryoufdd
博客等级 码龄5年 13粉丝 14原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值