帝国cms添加百度API地图,默认显示提示框

2024年03月25日 帝国cms教程 懒猪技术

百度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地图,默认显示提示框"的全部内容,如果有遇到其他问题的,可以在评论留言,或者加微信咨询。

本文链接:http://so.lmcjl.com/news/330/

展开阅读全文
相关内容