博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
解决kindeditor编辑器中使用百度地图时不能拖动坐标的问题
阅读量:6511 次
发布时间:2019-06-24

本文共 2180 字,大约阅读时间需要 7 分钟。

覆盖\plugins\baidumap文件夹下的map.html代码即可

<!doctype html>

<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>Baidu Maps </title>
    <style>
        html {
            height: 100%;
        }
        body {
            height: 100%;
            margin: 0;
            padding: 0;
            background-color: #FFF;
        }
       #map_canvas {
            height: 100%;
            width:100%;
        }
    </style>
</head>
<body>
   
        
    <div id="map_canvas"></div>
 
    <script type="text/javascript" src="http://api.map.baidu.com/api?v=1.2"></script>
    <script type="text/javascript">
        function getUrlParas() {
            var hash = location.hash,
                para = {},
                tParas = hash.substr(1).split("&");
            for (var p in tParas) {
                if (tParas.hasOwnProperty(p)) {
                    var obj = tParas[p].split("=");
                    para[obj[0]] = obj[1];
                }
            }
            return para;
        }
        var para = getUrlParas(),
            center = para.address ? decodeURIComponent(para.address) : "百度大厦",
            city = para.city ? decodeURIComponent(para.city) : "北京市";
        var marker_trick = false;
        var map = new BMap.Map("map_canvas");
        map.enableScrollWheelZoom();
        var marker = new BMap.Marker(new BMap.Point(116.404, 39.915), {
            enableMassClear: false,
            raiseOnDrag: true
        });
        marker.enableDragging();
        map.addOverlay(marker);
        map.addEventListener("click", function (e) {
            if (!(e.overlay)) {
                map.clearOverlays();
                marker.show();
                marker.setPosition(e.point);
                setResult(e.point.lng, e.point.lat);
            }
        });
        marker.addEventListener("dragend", function (e) {
            setResult(e.point.lng, e.point.lat);
        });
        var local = new BMap.LocalSearch(map, {
            renderOptions: { map: map },
            pageCapacity: 1
        });
        local.setSearchCompleteCallback(function (results) {
            if (local.getStatus() !== BMAP_STATUS_SUCCESS) {
                alert("无结果");
            } else {
                marker.hide();
            }
        });
        local.setMarkersSetCallback(function (pois) {
            for (var i = pois.length; i--;) {
                var marker = pois[i].marker;
                marker.addEventListener("click", function (e) {
                    marker_trick = true;
                    var pos = this.getPosition();
                    setResult(pos.lng, pos.lat);
                });
            }
        });
        window.onload = function () {
            local.search(center);
          
        };
       
        function search(address) {
           
            local.search(address);
        }
        /*
         * setResult : 定义得到标注经纬度后的操作
         * 请修改此函数以满足您的需求
         * lng: 标注的经度
         * lat: 标注的纬度
         */
        function setResult(lng, lat) {
            map.panTo(new BMap.Point(lng, lat));
           
        }
    </script>
</body>
</html>

转载于:https://www.cnblogs.com/lkd3063601/p/4264306.html

你可能感兴趣的文章
(转)全文检索技术学习(三)——Lucene支持中文分词
查看>>
Node.js+Koa开发微信公众号个人笔记(一)准备工作
查看>>
Android 图片缓存处理
查看>>
MySQL数据库锁定机制
查看>>
elasticsearch
查看>>
阿里盒马领域驱动设计实践
查看>>
vuex 存值 及 取值 的操作
查看>>
HDU 2242 考研路茫茫——空调教室(边双连通)
查看>>
如何在C#项目中使用NHibernate
查看>>
安装python包到指定虚拟环境
查看>>
力扣(LeetCode)21
查看>>
网页视频流m3u8/ts视频下载
查看>>
聊聊flink的TableFactory
查看>>
Python 基础起步 (十) 什么叫函数?
查看>>
8年软件测试工程师感悟——写给还在迷茫中的朋友
查看>>
5G一周热闻:华为夺联通5G大单,首张5G电话卡发放
查看>>
“迁移策略+新容器运行时”应对有状态应用的冷热迁移挑战
查看>>
使用Swoole加速Laravel(正式环境中)
查看>>
mockjs让前端开发独立于后端
查看>>
延迟脚本的方式
查看>>