zoukankan      html  css  js  c++  java
  • APP-4-百度地图定位

    APP-3-百度地图应用

    需要根据上一步完成百度地图应用的测试,本文介绍Hbuilder通过MUI框架完成百度地图的定位。

    1.代码部分

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8">
            <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
    
            <script src="https://cdn.bootcss.com/jquery/1.9.1/jquery.js"></script>
            <script src="http://api.map.baidu.com/api?v=2.0&ak=PG4DBjFTHfawSwT10GLLn4YZhQCmGYGA"></script>
            <script src="http://developer.baidu.com/map/jsdemo/demo/convertor.js"></script>
            <script src="../../js/mui.min.js"></script>
            
            <link href="../../css/mui.min.css"  rel="stylesheet"/>
            <link href="../../css/iconfont.css" rel="stylesheet"/>
            
            <title>地图应用-地图定位</title>
            
            <style type="text/css">
                body,
                html,
                #allmap {
                    width: 100%;
                    height: 95%;
                    /*overflow: hidden;*/
                    font-family: "微软雅黑";
                }
            </style>
        </head>
        <body>
            <header class="mui-bar mui-bar-nav"> 
                <a class="mui-action-back mui-icon mui-icon-left-nav mui-pull-left"></a>
                <h1 class="mui-title mui-body-font">地图定位</h1>
            </header>
            <div id="allmap">
                地图加载中。。。
            </div>  
            <div class="mui-content-padded">
                <button type="button" class="mui-btn mui-btn-block mui-btn-primary" onclick="getGeocode()">
                    获取定位信息
                </button>    
            </div>
        </body>
        <script type="text/javascript">    
            var exchange = {
                enableHighAccuracy: true,
                coordsType: 'bd09ll',
                timeout: 6000,
                maximumAge: 5000,
                provider: 'baidu'
            };
    /*        // 扩展API加载完毕后调用onPlusReady回调函数
            document.addEventListener( "plusready", onPlusReady, false );
            
            // 扩展API加载完毕,现在可以正常调用扩展API
            function onPlusReady() {
                // 获取定位
            }*/
            
            getlocation();
    
            function getlocation(){
                // 获取位置信息
                //plus.nativeUI.showWaiting();
                navigator.geolocation.getCurrentPosition(getinfo,exception,exchange);
            }
            
            function initMap(point){ 
                // 手机内置地图
    /*            var map=new plus.maps.Map("allmap");
                var point = new plus.maps.Point(116.331398,39.897445);*/
                // 百度地图
                map = new BMap.Map("allmap");
                map.addControl(new BMap.NavigationControl());
                map.addControl(new BMap.ScaleControl());
                map.addControl(new BMap.OverviewMapControl());
                map.centerAndZoom(point, 18);
                // 地图滚动大小
                map.enableScrollWheelZoom(true);
                // 创建标注
                var marker = new BMap.Marker(point);  
                // 将标注添加到地图中
                map.addOverlay(marker);          
                // 跳动的动画
                marker.setAnimation(BMAP_ANIMATION_BOUNCE); 
            }
            
            function getinfo(p){
                var curlat = p.coords.latitude;
                var curlon = p.coords.longitude;
                var curadd = p.addresses;
                //坐标
                console.log(curlat + ',' + curlon);
                var gpsPoint = new BMap.Point(curlon, curlat);
                //坐标转换   
                BMap.Convertor.translate(gpsPoint, 0, initMap); 
            }
            
            function exception(e){
                alert(e.Message);
            }
            
            function getGeocode(){
                getlocation();
            }
        </script>
    </html>
    View Code

    2.启动夜神模拟器

     

     调整夜神模拟器自带定位(否则百度地图定位有偏差)

     

     

    3.模拟器测试

     3.1Hbuilder运行模拟器

     

     3.2模拟器程序运行

     

     

  • 相关阅读:
    MyBatis的动态SQL详解
    Mybatis实现Mapper动态代理方式
    解决-Dmaven.multiModuleProjectDirectory system property is not set. Check $M2_HOME environment variable and mvn script match.
    springmvc前台向后台传值几种方式从简单到复杂
    Maven 项目无法在Ecplise加进tomcat server
    解决-Dmaven.multiModuleProjectDirectory system property is not set. Check $M2_HOME environment variable and mvn script match.
    tomcat启动startup.bat一闪而过
    用Eclipse创建一个Maven Web项目
    使用Yeoman搭建 AngularJS 应用 (8) —— 让我们搭建一个网页应用
    使用Yeoman搭建 AngularJS 应用 (7) —— 让我们搭建一个网页应用
  • 原文地址:https://www.cnblogs.com/ricoo/p/10342265.html
Copyright © 2011-2022 走看看