百度API地图显示效果如图:
利用自定义页面添加ditu.html,再引用iframe
<iframe scrolling="no" src="[!--news.url--]ditu.html"></iframe>
给iframe定义样式:
iframe { display: block; margin: 30px auto; width: 100%; height: 400px; border: 0; }
ditu.html参考代码:
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="keywords" content="百度地图,百度地图API,百度地图自定义工具,百度地图所见即所得工具" /> <meta name="description" content="百度地图API自定义地图,帮助用户在可视化操作下生成百度地图" /> <title>百度地图API自定义地图</title> <!--引用百度地图API--> <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=授权码"></script> </head> <body> <!--百度地图容器--> <div style="width:100%;height:400px;border:#ccc solid 1px;" id="map"></div> </body> <script type="text/javascript"> var cp_title="XX有限公司"; var cp_content="电话:123-456-789<br/>地址:XXXX16号"; var cp_lng=114.08607; var cp_lat=22.995141; //创建和初始化地图函数: function initMap(){ createMap();//创建地图 setMapEvent();//设置地图事件 addMapControl();//向地图添加控件 addMapOverlay();//向地图添加覆盖物 } function createMap(){ map = new BMap.Map("map"); map.centerAndZoom(new BMap.Point(cp_lng,cp_lat),19); } function setMapEvent(){ map.enableScrollWheelZoom(); map.enableKeyboard(); map.enableDragging(); map.enableDoubleClickZoom() } function addClickHandler(target,window){ target.addEventListener("click",function(){ target.openInfoWindow(window); }); } function addMapOverlay(){ var markers = [ {content:cp_content,title:cp_title,imageOffset: {width:-46,height:-21},position:{lat:cp_lat,lng:cp_lng}} ]; for(var index = 0; index < markers.length; index++ ){ var point = new BMap.Point(markers[index].position.lng,markers[index].position.lat); var marker = new BMap.Marker(point,{icon:new BMap.Icon("http://api.map.baidu.com/lbsapi/createmap/images/icon.png",new BMap.Size(20,25),{ imageOffset: new BMap.Size(markers[index].imageOffset.width,markers[index].imageOffset.height) })}); var label = new BMap.Label(markers[index].title,{offset: new BMap.Size(25,5)}); var opts = { width: 200, title: markers[index].title, enableMessage: false }; var infoWindow = new BMap.InfoWindow(markers[index].content,opts);// 创建信息窗口对象 marker.setLabel(label); addClickHandler(marker,infoWindow); map.addOverlay(marker); map.openInfoWindow(infoWindow, map.getCenter()); // 打开信息窗口 }; } //向地图添加控件 function addMapControl(){ var scaleControl = new BMap.ScaleControl({anchor:BMAP_ANCHOR_BOTTOM_LEFT}); scaleControl.setUnit(BMAP_UNIT_IMPERIAL); map.addControl(scaleControl); var navControl = new BMap.NavigationControl({anchor:BMAP_ANCHOR_TOP_LEFT,type:BMAP_NAVIGATION_CONTROL_LARGE}); map.addControl(navControl); var overviewControl = new BMap.OverviewMapControl({anchor:BMAP_ANCHOR_BOTTOM_RIGHT,isOpen:true}); map.addControl(overviewControl); } var map; initMap(); </script> <style> .BMap_bubble_content { font-size: 13px;} .BMap_bubble_title { font-weight: bold; margin-bottom: 8px;} label.BMapLabel { display: none !important;} </style> </html>
地图制作方法:
1、申请百度APT地图账号,需要实名认证
2、控制台创建应用,添加网站白名单,获取AK,替换ditu.html的AK
3、坐标拾取:http://api.map.baidu.com/lbsapi/getpoint/index.html,替换ditu.html坐标位置
HTTPS加了证书的话,还需要修改ditu.html
1、在</head>之前添加js
<script type="text/javascript">window.HOST_TYPE='2'</script>
2、修改http为https
<script type="text/javascript" src="https://api.map.baidu.com/api?v=2.0&ak=授权码"></script>
以上就是关于中"帝国cms添加百度API地图,默认显示提示框"的全部内容,如果有遇到其他问题的,可以在评论留言,或者加微信咨询。
本文链接:https://my.lmcjl.com/post/16136.html
展开阅读全文
4 评论