zoukankan      html  css  js  c++  java
  • 百度地图接口使用例子

    baidumap.js

    var bmap;
    var menu=null;
    var initlat="34.16";
    var initlng="208.54";
    var initzoom=5;
    function initialize(){
        bmap=new BMap.Map("map_canvas");
        bmap.enableScrollWheelZoom();
        bmap.centerAndZoom(parseToBmapLatlng(initlat,initlng),initzoom);
        bmap.addControl(new BMap.NavigationControl());
        initOverCallback()
        }
        function loadBaiduMapApi(){
        var a=document.createElement("script");
        a.src="http://api.map.baidu.com/api?v=1.3&callback=initialize";
        document.body.appendChild(a)
        }
        function parseToBmapLatlng(b,a){
        return new BMap.Point(a,b)
        }
        function fixPosition(a,b){
        bmap.centerAndZoom(a,b)
        }
        function addMarker(c){
        var b={
            point:null,
            title:null,
            dragable:false,
            func:null,
            multi:false,
            label:false
        };
        
        var d=$.extend({},b,c);
        if(d.point==null){
            alert("请指定标记位置!")
            }
            if(!d.multi){
            bmap.clearOverlays()
            }
            var a=new BMap.Marker(d.point);
        if(d.title!=null){
            a.setTitle(d.title)
            }
            bmap.addOverlay(a);
        if(d.dragable){
            a.enableDragging()
            }
            if(d.func!=null){
            a.addEventListener("click",d.func)
            }
            return a
        }
        function addContextMenu(){
        menu=new BMap.ContextMenu();
        var b=[{
            text:"放大",
            callback:function(){
                bmap.zoomIn()
                }
            },{
        text:"缩小",
        callback:function(){
            bmap.zoomOut()
            }
        },{
        text:"在此标记(拖拽标记改变位置,点击标记确定位置)",
        callback:function(c){
            addMarker({
                point:c,
                dragable:true,
                func:confirmLoc,
                multi:true
            })
            }
        }];
    for(var a=0;a<b.length;a++){
        menu.addItem(new BMap.MenuItem(b[a].text,b[a].callback,100))
        }
        bmap.addContextMenu(menu)
    }
    function locateWithIp(){
        var a=new BMap.LocalCity();
        a.get(function(b){
            fixPosition(b.name,b.level)
            })
        }
    function confirmLoc(a){
        if(confirm("是否将此位置作为目标地址?")){
    
            $("#latitude").val(a.point.lat);
            $("#longitude").val(a.point.lng);
            //bmap=new BMap.Map("map_canvas");
            var sContent ="<h5 style='margin:0 0 5px 0;padding:0.2em 0'>"+$('#street').val()+"</h4>" ;
            var point =new BMap.Point(a.point.lng, a.point.lat);
            var marker = new BMap.Marker(point);
            var infoWindow = new BMap.InfoWindow(sContent);  // 创建信息窗口对象
            bmap.addOverlay(marker);
            marker.openInfoWindow(infoWindow);
    
            infoWindow.redraw();
    
            $("#messagebox").fadeOut(1500);
    
        }
    }
    function codeAddress(c){
        var a={
            pageCapacity:8,
            onSearchComplete:function(e){
                if(b.getStatus()==BMAP_STATUS_SUCCESS){
                    bmap.clearOverlays();
                    for(var d=0;d<e.getCurrentNumPois();d++){
                        if(d==0){
                            fixPosition(e.getPoi(d).point,15)
                            }
                            addMarker({
                            point:e.getPoi(d).point,
                            title:e.getPoi(d).title,
                            multi:true,
                            func:confirmLoc
                        })
                        }
                    }else{
                alert("没有搜索到相关地址,请手动在地图上选择该地址并点击鼠标右键来选择具体位置!")
                }
            }
    };
    
    var b=new BMap.LocalSearch(bmap,a);
    b.search(c,{
        forceLocal:true
    })
    }
    function resetMap(){
        if(menu!=null){
            bmap.removeContextMenu(menu)
            }
            bmap.clearOverlays();
        bmap.centerAndZoom(parseToBmapLatlng(initlat,initlng),initzoom)
        }
        function initOverCallback(){};

    在html文件里使用:

    $(function(){

    loadBaiduMapApi();

    })

    <div id="map_canvas" style=" 400px; height: 320px; margin-top: 20px; overflow: hidden; position: relative; z-index: 0; background-color: rgb(243, 241, 236); color: rgb(0, 0, 0); text-align: left;"></div>
  • 相关阅读:
    Week03-面向对象入门
    Week02-Java基本语法与类库
    201621123056 《Java程序设计》第1周学习总结
    2.2确定一个字符是否在指定范围内
    2.1确定一个char包含何种字符
    1.自己写一个计算器demo
    1.23 确定一个Decimal或Double的整数部分
    1.5 测试奇偶性
    1.2度转化为弧度 1.3弧度转换为度
    1.1确定分数与浮点数值之间的近似相等性。
  • 原文地址:https://www.cnblogs.com/RightDear/p/3154620.html
Copyright © 2011-2022 走看看