美文网首页
LBS应用开发(百度地图API)

LBS应用开发(百度地图API)

作者: 变得简单 | 来源:发表于2016-08-26 09:14 被阅读0次

    LBS(Location-Based Services),又称位置服务,LBS是由移动通信网络和卫星定位系统结合在一起提供的一种增值业务,通过一组定位技术获得移动终端的位置信息(如经纬度坐标数据),提供给移动用户本人或他人以及通信系统,实现各种与位置相关的业务。实质上是一种概念较为宽泛的与空间位置有关的新型服务业务。

    先登录百度地图平台 http://lbsyun.baidu.com/

    以web开发为为例,所以选择Javascript API。
    百度地图JavaScript API是一套由JavaScript语言编写的应用程序接口,可帮助您在网站中构建功能丰富、交互性强的地图应用,支持PC端和移动端基于浏览器的地图应用开发,且支持HTML5特性的地图开发。极速JavaScript API全新上线,此版本专门针对简单功能的移动端浏览器开发提供。
    该套API免费对外开放。需先申请密钥(ak)才可使用,接口(除发送短信功能外)无使用次数限制。

    <!DOCTYPE >
    <html >
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
    <title>自动提示</title>
    <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=秘钥">
    <script>
    <style type="text/css">
    body{font-size:13px;margin:0px}

    container{width:600px;height:400px}

    .label{margin-left:20px;font-weight:bold;font-size:14px}
    </style>
    </head>
    <body>
    <div style="margin:50px">请输入:<input type="text" id="suggestId" size="30" value="百度" style="width:300px;" /></div>
    <div id="searchResultPanel" style="border:1px solid #C0C0C0;width:300px;height:600px;position:absolute;left: 650px;top:20px;"></div>
    <div id="container"></div>
    <script type="text/javascript">
    function G(id) {
    return document.getElementById(id);
    }

    var map = new BMap.Map("container");
    var point = new BMap.Point(116.3964,39.9093);
    map.centerAndZoom(point,13);
    map.enableScrollWheelZoom();

    var ac = new BMap.Autocomplete( //建立一个自动完成的对象
    {"input" : "suggestId"
    ,"location" : map
    });

    ac.addEventListener("onhighlight", function(e) { //鼠标放在下拉列表上的事件
    var str = "";
    var _value = e.fromitem.value;
    var value = "";
    if (e.fromitem.index > -1) {
    value = _value.province + _value.city + _value.district + _value.street + _value.business;
    }
    str = "FromItem<br />index = " + e.fromitem.index + "<br />value = " + value;

    value = "";
    if (e.toitem.index > -1) {
        _value = e.toitem.value;
        value = _value.province +  _value.city +  _value.district +  _value.street +  _value.business;
    }    
    str += "<br />ToItem<br />index = " + e.toitem.index + "<br />value = " + value;
    G("searchResultPanel").innerHTML = str;
    

    });

    var myValue;
    ac.addEventListener("onconfirm", function(e) { //鼠标点击下拉列表后的事件
    var _value = e.item.value;
    myValue = _value.province + _value.city + _value.district + _value.street + _value.business;
    G("searchResultPanel").innerHTML ="onconfirm<br />index = " + e.item.index + "<br />myValue = " + myValue;

    setPlace();
    

    });

    function setPlace(){// 创建地址解析器实例
    var myGeo = new BMap.Geocoder();// 将地址解析结果显示在地图上,并调整地图视野
    myGeo.getPoint(myValue, function(point){
    if (point) {
    map.centerAndZoom(point, 16);
    map.addOverlay(new BMap.Marker(point));
    }
    }, "北京");
    }
    </script>
    </body>
    </html>

    如图:

    Paste_Image.png

    相关文章

      网友评论

          本文标题:LBS应用开发(百度地图API)

          本文链接:https://www.haomeiwen.com/subject/lrmasttx.html