百度地图接口使用例子

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="width: 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>

 

 

 

 

你可能感兴趣的:(百度地图)