Leaflet 传单上有填充物吗?

Leaflet 传单上有填充物吗?,leaflet,Leaflet,我试图在传单地图中设置fitBounds选项,如下所示: var bounds = new L.LatLngBounds([[Math.max(lat, borneLat), Math.max(lng, borneLng)], [Math.min(lat, borneLat), Math.min(lng, borneLng)]]); map.fitBounds(bounds, { padding: [20, 20] }); 然而,这似乎没有添加任何填充?至少地图“缩放级别”不会改变,并且它始终

我试图在传单地图中设置fitBounds选项,如下所示:

var bounds = new L.LatLngBounds([[Math.max(lat, borneLat), Math.max(lng, borneLng)], [Math.min(lat, borneLat), Math.min(lng, borneLng)]]);
map.fitBounds(bounds, { padding: [20, 20] });
然而,这似乎没有添加任何填充?至少地图“缩放级别”不会改变,并且它始终显示边缘中的两个点(即,一个点位于最右上方,另一个点位于最左下方)。对于一些标记集,它可以正常工作,缩放是在一个体面的水平,你可以看到一切都很好。然而,当项目彼此非常接近时,它似乎放大了一点太多,除非我可以用一些“填充”来填充它

我也不确定边界是否会像那样正确?我是否应该只使用:

var bounds = [[Math.max(lat, borneLat), Math.max(lng, borneLng)], [Math.min(lat, borneLat), Math.min(lng, borneLng)]];
map.fitBounds(边界,{padding:[]})
应该可以工作。我建议您将填充改为例如,
[50,50]
,可能您的填充值太小了


看看这个。

我遇到了这个问题。据我所知,填充是由缩放控制的。在我的示例中,10以下的所有填充设置都没有区别。当填充变为10时,地图将缩小一级,并有填充。进一步增加填充值不会产生任何影响,直到填充值太大,达到另一个缩小级别。

FWI,您也可以将最大缩放级别设置为贴图,如下所示:

var map = L.mapbox.map('map', 'mapbox.emerald', {
    maxZoom: 16
});

这样,如果标记太接近,可以避免地图放大过多。

默认情况下,传单仅在整数值缩放级别之间缩放。旧版本1.0.0“分数缩放”可通过“zoomSnap”参数获得:

var map = L.map('map', {
    zoomSnap: 0.1
});

这将允许更小的填充值可见,但也会影响scrollWheelZoom行为。

在JSFIDLE上,[50,50]的填充效果很好,但在我的站点上似乎仍然显示相同的缩放级别,将尝试将其提高得更高(当右上角和左下角有一个点彼此相距很远时)嗯,似乎我运行的是一个更旧版本的传单,所以我更新了它,现在效果很好。使用[50,50]填充设置。非常感谢!我也有同样的经验。我们做错了什么?是zoomSnap!我发布了一个答案