var baiduMap = { map : null, initMap : function(){ if(($("#container").attr("lng") == '' || $("#container").attr("lng") == undefined) || ($("#container").attr("lat")== '' || $("#container").attr("lat")== undefined) ){ return false; } baiduMap.map = new BMap.Map("container");// 创建地图实例 var point = new BMap.Point($("#container").attr("lng"), $("#container").attr("lat"));// 创建点坐标 //var gc = new BMap.Geocoder();//创建地址解析器实例 // var opts = { // width : 295, //宽度 // height : 55, //高度 // panel : "panel", //检索结果面板 // enableAutoPan : true, //自动平移 // enableSendToPhone : false, // searchTypes :[ // BMAPLIB_TAB_SEARCH, //周边检索 // BMAPLIB_TAB_TO_HERE, //到这里去 // BMAPLIB_TAB_FROM_HERE //从这里出发 // ] // }; baiduMap.map.centerAndZoom(point, 13);// 初始化地图,设置中心点坐标和地图级别 //map.addOverlay(new BMap.Marker(point)); //添加标注 //map.addOverlay(new BMap.Marker(point2)); //添加标注 // map.addEventListener("click", function (e) { // var pt = e.point; // gc.getLocation(pt, function (rs) { // var addComp = rs.addressComponents; // var addr; // addr = '地址:' + addComp.city + addComp.district + addComp.street + addComp.streetNumber; // searchInfoWindow = new BMapLib.SearchInfoWindow(map, addr, opts); // //map.clearOverlays(); //删除之前标注 // var marker = new BMap.Marker(pt); // map.addOverlay(marker); // searchInfoWindow.open(marker); // // }); // }); var centerPoint = baiduMap.addMarker(point); var companyName = $('#baiMaphidden').attr('flagName'); var companyAddress = $('#baiMaphidden').attr('flagAddress'); var companyPhone = $('#baiMaphidden').attr('flagPhone'); var companyTelPhone = $('#baiMaphidden').attr('flagTelPhone'); var jsonStr = '{"name":"'+companyName+'","address":"'+companyAddress+'","phone":"'+companyPhone+'","telPhone":"'+companyTelPhone+'"}'; var jsonObject = eval('(' + jsonStr + ')'); baiduMap.addInfoWindow(centerPoint, jsonObject); if($('#jsonArray').attr('jsondata') && $('#jsonArray').attr('jsondata') != 'null'){ var markerArr = eval('(' + $('#jsonArray').attr('jsondata') + ')') ; for (var i = 0; i < markerArr.length; i++) { var p0 = markerArr[i].longitude; var p1 = markerArr[i].latitude; if(p0 && p1){ var maker = baiduMap.addMarker(new BMap.Point(p0, p1)/*, i*/); baiduMap.addInfoWindow(maker, markerArr[i], i); } } } baiduMap.map.enableDragging(); //启用地图拖拽事件,默认启用(可不写) baiduMap.map.enableScrollWheelZoom(); //启用地图滚轮放大缩小 baiduMap.map.enableDoubleClickZoom(); //启用鼠标双击放大,默认启用(可不写) baiduMap.map.enableKeyboard(); //启用键盘上下左右键移动地图 baiduMap.map.addControl(new BMap.NavigationControl()); // 添加平移缩放控件 baiduMap.map.addControl(new BMap.ScaleControl()); // 添加比例尺控件 baiduMap.map.addControl(new BMap.OverviewMapControl()); //添加缩略地图控件 //map.addControl(new BMap.MapTypeControl()); //添加地图类型控件 }, // 添加标注 addMarker : function(point, index) { // var myIcon = new BMap.Icon("http://api.map.baidu.com/img/markers.png", // new BMap.Size(23, 25), { // offset: new BMap.Size(10, 25), // imageOffset: new BMap.Size(0, 0 - index * 25) // }); var marker = new BMap.Marker(point/*, { icon: myIcon }*/); baiduMap.map.addOverlay(marker); return marker; }, // 添加信息窗口 addInfoWindow : function (marker, poi) { //pop弹窗标题 var title = '
' + poi.name + '
'; //pop弹窗信息 var html = []; html.push('
'); html.push('
'); html.push('
地址:
'); html.push('
' + poi.address + '
'); html.push('
'); html.push('
'); html.push('
手机:
'); html.push('
' + poi.phone + '
'); html.push('
'); html.push('
'); html.push('
座机:
'); html.push('
' + poi.telPhone + '
'); html.push('
'); html.push('
'); var infoWindow = new BMap.InfoWindow(html.join(""), { title: title, width: 200 }); var openInfoWinFun = function () { marker.openInfoWindow(infoWindow); }; marker.addEventListener("click", openInfoWinFun); return openInfoWinFun; } };