HTML5通过获取地理位置经纬度,判断城市

html5提供了获取地理位置的api,很方便确定客户的经纬度,我们获取到经纬度以后,可以通过百度地图提供的api确定用户的所在位置。

<!DOCTYPE html> 
<html> 
<head> 
    <meta charset="utf-8"/> 
    <title>基于浏览器的HTML5查找地理位置</title>
    <!-- 百度API -->
 <script src="http://api.map.baidu.com/api?v=1.2" type="text/javascript"></script>
  <script>

           function getLocation(){
               var options={
                   enableHighAccuracy:true,
                   maximumAge:1000
               }
               if(navigator.geolocation){
                   //浏览器支持geolocation
                   navigator.geolocation.getCurrentPosition(onSuccess,onError,options);
               }else{
                   //浏览器不支持geolocation
                   alert('您的浏览器不支持地理位置定位');
               }
           }

           //成功时
           function onSuccess(position){
               //返回用户位置
               //经度
               var longitude =position.coords.longitude;
               //纬度
               var latitude = position.coords.latitude;

    alert('经度'+longitude+',纬度'+latitude);
              
               //根据经纬度获取地理位置,不太准确,获取城市区域还是可以的
    var map = new BMap.Map("allmap");
    var point = new BMap.Point(longitude,latitude);
    var gc = new BMap.Geocoder();
    gc.getLocation(point, function(rs){
       var addComp = rs.addressComponents;
       alert(addComp.province + ", " + addComp.city + ", " + addComp.district + ", " + addComp.street + ", " + addComp.streetNumber);
    });

           }

           //失败时
           function onError(error){
               switch(error.code){
                   case 1:
                   alert("位置服务被拒绝");
                   break;

                   case 2:
                   alert("暂时获取不到位置信息");
                   break;

                   case 3:
                   alert("获取信息超时");
                   break;

                   case 4:
                    alert("未知错误");
                   break;
               }

           }

           window.onload=getLocation;
        
   </script>
</head>
<body>
</body>
</html>

目前在电脑上有时不能获取,手机端还是很好的,另外,获取的定位不是十分准确,但是用来获取城市区域还是可以的。

其实这个就是调用了百度地图+html5来实现了,非常的不错。

时间: 2024-10-27 16:48:38

HTML5通过获取地理位置经纬度,判断城市的相关文章

html5获取地理位置信息API

html5获取地理位置信息API       在HTML5中,可以看下如何使用Geolocation API来获得用户的地理位置信息,如果该浏览器支持的话,且设备具有定位功能,就能够直接使用这组API来获取当前位置的信息,该API可以应用在移动设备上的地理定位:为window.navigator 对象新增了一个geolocation属性,可以使用Geolocation API来对该属性进行访问.window.navigator对象中的geolocation属性有三个方法如下: 第一个方法是:ge

php通过获取头信息判断图片类型的方法

本文实例讲述了php通过获取头信息判断图片类型的方法.分享给大家供大家参考.具体实现方法如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 $filename = '617.gif' ; function pictype ( $file ) { /*$png_header = "/x89/x50/x4e/x47/x0d/x0a/x1a/x0a"; $jpg_header = "/xff/xd

php通过获取头信息判断图片类型的方法_php技巧

本文实例讲述了php通过获取头信息判断图片类型的方法.分享给大家供大家参考.具体实现方法如下: $filename = '617.gif' ; function pictype ( $file ) { /*$png_header = "/x89/x50/x4e/x47/x0d/x0a/x1a/x0a"; $jpg_header = "/xff/xd8";*/ $header = file_get_contents ( $file , 0 , NULL , 0 , 5

基于HTML5获取地理位置定位信息效果

如何使用HTML5地理位置定位功能 定位功能(Geolocation)是HTML5的新特性,因此只有在支持HTML5的现代浏览器上运行,特别是手持设备如iphone,地理定位更加精确.首先我们要检测用户设备浏览器是否支持地理定位,如果支持则获取地理信息.注意这个特性可能侵犯用户的隐私,除非用户同意,否则用户位置信息是不可用的,所以我们在访问该应用时会提示是否允许地理定位,我们当然选择允许即可.   function getLocation(){     if (navigator.geoloca

HTML5 获取用户经纬度及距离计算公式

在做项目时需要做定位获取经纬度并计算距离,这里使用 HTML5 获取经纬度. <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>利用html5获取经纬度</title> </head>   <body> <span id="support">将下面的经纬度输入谷歌地图:</span

Android 通过当前经纬度获得城市的实例代码_Android

复制代码 代码如下: package com.yy; import java.io.InputStreamReader;import java.net.HttpURLConnection;import java.net.URL; import javax.xml.parsers.SAXParser;import javax.xml.parsers.SAXParserFactory; import org.xml.sax.Attributes;import org.xml.sax.InputSou

PHP中根据IP地址判断城市实现城市切换或跳转代码_php技巧

获取IP地址 复制代码 代码如下: <?phpfunction GetIP() {    if ($_SERVER["HTTP_X_FORWARDED_FOR"])        $ip = $_SERVER["HTTP_X_FORWARDED_FOR"];    else if ($_SERVER["HTTP_CLIENT_IP"])        $ip = $_SERVER["HTTP_CLIENT_IP"];  

【坐标】后台根据经纬度获取城市名称

问题描述 如题现在有一个坐标怎么获取到其所在的城市信息 解决方案 解决方案二:简单的方式是提交经纬度给百度的地图API获取该经纬度的信息,其中包含城市信息.复杂点嘛,自己把城市的范围坐标记录下来,然后通过点是否在多边形内的算法,找到具体城市解决方案三:百度地图应该有开发的api可以调用解决方案四:百度地图api可以调用,可以返回json或xml非常方便解决方案五:引用3楼codernull的回复: 百度地图api可以调用,可以返回json或xml非常方便 qiu求指导~!~解决方案六:里面的7.

智慧城市研讨会首提判断城市信用程度的三个标准

3月24日,新型智慧城市发展基金建设研讨会在山东济南召开,与会嘉宾就智慧城市建设展开了热烈讨论.蚂蚁金服副总裁.芝麻信用总经理胡滔作了题为"科技+信用,智慧城市的未来"主题演讲,认为城市发展有传统城市.数字城市.智慧城市.信用城市四个阶段.同时提出,城市发展的驱动力将由技术驱动升级为信用驱动,并在国内首次提出了判断信用城市建设的三个标准,信用覆盖度.信用普及度.信用便捷度. 城市发展四阶段 胡滔认为城市的发展经历了四个阶段: 1.0传统城市,从老百姓的感知来看,要到很多政府部门去办事,