防止地图重复并在世界范围内保持拖动

kat*_*tie 2 javascript maps draggable leaflet

有没有办法让传单不重复世界地图并使地图在拖动时保持在世界范围内?并在世界大小达到窗口大小时禁用缩小

在此处输入图片说明

iH8*_*iH8 5

要阻止瓷砖重复,请使用noWrap选项L.TileLayer

如果设置为 true,则图块不会在世界宽度(-180 到 180 经度)之外加载,而不是重复加载。

http://leafletjs.com/reference.html#tilelayer-nowrap

如果您想停止超出定义范围的平移,请使用或调用该方法的maxBounds选项:L.MapsetMaxBounds

将视图限制在给定的地理范围内,当用户尝试在视图外平移时将其弹回。

如果您想禁用超过特定级别的缩放,请使用L.Map'sminZoommaxZoomoptions。您想要做的是设置最小缩放级别并将其用作初始缩放。什么因素取决于您地图的元素大小和您的 tilelayer 的 tilesize。大多数瓷砖供应商使用 256px²。在缩放 0 时,世界是 1 块,在缩放 1 时,2x2 块,在 3 时是 4x4 等。因此,如果您的地图元素是 512px²,那么您minZoom将是 1。

这是 Plunker 的演示:http ://embed.plnkr.co/rP5NLQ/preview