目前我们正在制作一个带有gmaps的传单项目,我遇到了一些问题。
添加多个标记后(每个都有一个弹出窗口)我们想要打开它们。
为此,我正在使用以下代码:
L.Map = L.Map.extend({
openPopup: function(popup) {
// this.closePopup();
this._popup = popup;
return this.addLayer(popup).fire('popupopen', {
popup: this._popup
});
}
});
在页面加载时,一切都按预期工作。
但是失败的情况出现了:
在pageload
用户zooms in
之后,某些标记为用户的out of the “view area”
。
几秒钟后,网站会加载new position data
(对于标记)using a rest interface
。
传输位置数据后,我目前删除所有标记并在传输的位置重新创建它们并打开它们。
此marker.openPopup()
会触发map moves
,即popup fits in the “view area” of the user
。
在这种情况下我怎样才能prevent leaflet to drag the map
?
答案 0 :(得分:12)
我相信你指的是autoPan
财产?来自API:Set it to false if you don't want the map to do panning animation to fit the opened popup.
http://leafletjs.com/reference.html#popup
因此,在创建弹出窗口时,只需传递选项autoPan: false