如何一次在Leaflet Marker中打开多个弹出窗口

时间:2016-08-15 14:58:06

标签: leaflet mapbox leaflet.markercluster

Map`就像这样:

L.Map = L.Map.extend({
openPopup: function(popup) {
this._popup = popup;
        return this.addLayer(popup).fire('popupopen', {
            popup: this._popup
        });
    }
});

但我正在使用传单。无论如何,我可以阻止关闭我的标记弹出窗口吗?

L.mapbox.accessToken = constant.accessToken;
var map = L.mapbox.map('map', 'mapbox.streets', {zoomControl: true});

2 个答案:

答案 0 :(得分:6)

2017年12月更新 传单popup选项已扩展为包含具有所需效果的{ autoClose: false }

 var my_marker = L.marker([my_lat, my_lng], {icon: my_icon})
                  .addTo(map)
                  .bindPopup('My Popup HTML', {closeOnClick: false, autoClose: false});

答案 1 :(得分:3)

让我引用Leaflet documentation on L.Popup

  

用于在地图的某些位置打开弹出窗口。使用Map.openPopup打开弹出窗口,同时确保一次只打开一个弹出窗口(建议用于可用性),或使用Map.addLayer打开任意数量的弹出窗口。

要打开多个弹出窗口,请使用L.popup(latlng, options)对其进行实例化,然后.addTo(map)