geolocation/ 百度地图api Geolocation 定位当前城市信息

根据当前所处位置 定位所在城市信息

<html>
<head>
    <meta charset="UTF-8" />
    <title>js 百度 geolocation 定位当前城市</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<script src="http://libs.baidu.com/jquery/1.9.1/jquery.min.js"></script>
<script src="http://api.map.baidu.com/api?v=2.0&ak=abcs"></script>
<script type="text/javascript">  

var geolocation = new BMap.Geolocation();
var gc = new BMap.Geocoder();     

geolocation.getCurrentPosition( function(r) {   //定位结果对象会传递给r变量  

        if(this.getStatus() == BMAP_STATUS_SUCCESS)
        {  //通过Geolocation类的getStatus()可以判断是否成功定位。
            var pt = r.point;
            gc.getLocation(pt, function(rs){
                var addComp = rs.addressComponents;
                alert(addComp.province + addComp.city + addComp.district + addComp.street + addComp.streetNumber);
            });
        }
        else
        {
            //关于状态码
            //BMAP_STATUS_SUCCESS   检索成功。对应数值“0”。
            //BMAP_STATUS_CITY_LIST 城市列表。对应数值“1”。
            //BMAP_STATUS_UNKNOWN_LOCATION  位置结果未知。对应数值“2”。
            //BMAP_STATUS_UNKNOWN_ROUTE 导航结果未知。对应数值“3”。
            //BMAP_STATUS_INVALID_KEY   非法密钥。对应数值“4”。
            //BMAP_STATUS_INVALID_REQUEST   非法请求。对应数值“5”。
            //BMAP_STATUS_PERMISSION_DENIED 没有权限。对应数值“6”。(自 1.1 新增)
            //BMAP_STATUS_SERVICE_UNAVAILABLE   服务不可用。对应数值“7”。(自 1.1 新增)
            //BMAP_STATUS_TIMEOUT   超时。对应数值“8”。(自 1.1 新增)
            switch( this.getStatus() )
            {
                case 2:
                    alert( ‘位置结果未知 获取位置失败.‘ );
                break;
                case 3:
                    alert( ‘导航结果未知 获取位置失败..‘ );
                break;
                case 4:
                    alert( ‘非法密钥 获取位置失败.‘ );
                break;
                case 5:
                    alert( ‘对不起,非法请求位置  获取位置失败.‘ );
                break;
                case 6:
                    alert( ‘对不起,当前 没有权限 获取位置失败.‘ );
                break;
                case 7:
                    alert( ‘对不起,服务不可用 获取位置失败.‘ );
                break;
                case 8:
                    alert( ‘对不起,请求超时 获取位置失败.‘ );
                break;  

            }
        }          

    },
    {enableHighAccuracy: true}
)  

</script>  

</head>
<body>  

</body>
</html>

  2、html5 geolocation 定位( 获取当前经纬度 ):

<html>
<head>
    <meta charset="UTF-8" />
    <title>js geolocation 定位当前城市</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<script type="text/javascript">
if (navigator.geolocation)
{
    navigator.geolocation.getCurrentPosition(  

        function( position ) {
            show_msg( position );
         },  

        function( err ) {  

            switch(error.code)
            {
            case 0:
              alert("尝试获取您的位置信息时发生错误:" + error.message);
              break;
            case 1:
                alert("用户拒绝了获取位置信息请求。");
              break;
            case 2:
                alert("浏览器无法获取您的位置信息:" + error.message);
              break;
            case 3:
                alert("获取您位置信息超时。");
              break;
            }
        }
    )
}
else
      alert( ‘您当前使用的浏览器不支持Geolocation服务‘ );  

function show_msg( position )
{
    var lat = position.coords.latitude;
    var lng = position.coords.longitude;
    alert( "您所在的位置: 经度" + lat + ",纬度" + lng );  

    if( typeof position.address != "undefined" )
    {
        var country = position.address.country;
        var province = position.address.region;
        var city = position.address.city;
        alert(‘ 您位于 ‘ + country + province + ‘省‘ + city +‘市‘);
    }
}
</script>  

</head>
<body>
    <p id="geo_loc"><p>
</body>
</html>  
时间: 2024-08-09 23:52:30

geolocation/ 百度地图api Geolocation 定位当前城市信息的相关文章

HTML5 调用百度地图API地理定位

<!DOCTYPE html> <html> <title>HTML5 HTML5 调用百度地图API地理定位实例</title> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <script type="text/javascript" src="ht

android 基于百度地图api开发定位以及获取详细地址

一:百度地图开发必须要到百度开发平台android开发api下载相应的库,已经申请百度地图开发key. 二:新建项目baidumaplocation.设计main.xml文件这里注意的是MapView控件必须使用来自百度库封装好的com.baidu.mapapi.MapView .设计代码如下: Xml代码   <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=&q

关于用模拟器运行百度地图API无法定位的问题 - 不能用模拟器

模拟器是没有办法定位,当你加入定位模块的时候,传出的参数都是空的. 定位的这个方法函数,是通过回调接口来实现,而且触发该事件的时候,需要经纬度位置改变.官方文档写得很清楚,简单点来说,就是你没有GPS定位设备就没有办法实现(只能真机测试),GPS定位是实时监控定位,随时都在接收和发射你的位置信息,只有不断的改变才能触发该定位事件.(不得不说百度的开发人员很仔细) 转载自 http://blog.csdn.net/chuchu521/article/details/7980270 最后一段 关于用

集成百度地图API实现定位

一.百度地图API获取定位 AndroidManifest.xml必须配置: 定位服务 <service android:name="com.baidu.location.f" android:enabled="true" android:process=":remote" android:exported="false"> <intent-filter > <action android:nam

百度地图API --地理位置定位

jQuery环境 <script src="http://api.map.baidu.com/api?v=1.5&ak=1b0ace7dde0245f796844a06fb112734"></script> <form action="" id="comForm" name="comForm" method="post" onSubmit="return ch

ionic 使用百度地图API, 定位用户当前所在的城市示例

在ionic程序中,如果需要定位用户所在的城市,可以用如下方法. 在ionic程序中,引入百度地图API.打开文件: \src\index.html. 在 head tag中,添加如下代码 , 注意将"您的密钥" 替换成 您申请的密钥 <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=您的密钥"></script> 我

百度地图API JavaScript显示人员分布信息

效果图贴下: js代码贴下: <body> <div id="div-map"></div></body></html><script type="text/javascript">$(function(){ // 百度地图API功能 var map = new BMap.Map("div-map"); map.centerAndZoom(new BMap.Point(106

百度地图API之定位当前和公交查询

前言 本文主要介绍百度地图中自动定位到当前的功能,然后可以指定起始位置查询公交. 源码 <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="viewport" content="initial-scale=1.0,

百度地图api获取经纬度和城市名称

想集成百度API定位需要完成以下步骤: 1:注册开发者 2:申请key 3:下载jar包 4:代码集成 先看下效果: 1:注册开发者 最好提前申请,审核需要1,2天 2:申请key 本人用的是Android Studio,所以用命令行查看SHA1码 3:下载jar包 只需下载"定位功能"的开发包即可 4:代码集成(详细可见官方讲解,以下代码以简洁实用为主) package com.union.roid.testroid; import android.app.Activity; imp