【百度地图】标注点左上角,地图显示等

 

问题1:地图只显示左上角一小块

解决:var map = new BMap.Map("map"); 只需要初始化一次。

 

问题2:初始化地图,标注点不在中心,而在左上角

解决:先show() Map的div,再初始化地址。

 

问题3:标注点在中心,但第一次拖拽时,标注点跳到左上角,之后拖拽正常。

解决:地图加载完后,‘tilesloaded’ 事件中重新设置标注点。

 

egCode:

 //完成问题1
$('#map').show();
dealer_map.map_tag(data);

self.map_tag = function (data) {
        map.clearOverlays();
        for (var i = 0; i < data.length; i++) {
            if (i == 0) {
                point = new BMap.Point(data[i].longitude, data[i].latitude); //循环生成新的地图点
                var marker = new BMap.Marker(point); //按照地图点坐标生成标记
                map.addOverlay(marker);
                map.centerAndZoom(point, 15); // 初始化地图,设置中心点坐标和地图级别。
                map.enableScrollWheelZoom(true);
                layer.closeAll();
        
                //完成问题3
                var loadCount = 1;
                map.addEventListener("tilesloaded", function () {
                    if (loadCount == 1) {
                        map.setCenter(point, 15);
                    }
                    loadCount = loadCount + 1;
                });

                return;
            }
        }
    };    
//完成问题2
self.map_init = function (lat, lon) {
        //if (isInit) return;
        map = new BMap.Map("map"); // 创建Map实例
        //isInit = true;
    };
window.addEventListener('load', function () {
        self.map_init(37, 105);
    });
    

 

转载于:https://www.cnblogs.com/nyah/p/5555302.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值