【问题标题】:speedup leaflet map refresh after zoom change缩放更改后加速传单地图刷新
【发布时间】:2017-03-26 03:01:24
【问题描述】:

我希望在缩放更改后更快地删除“旧”地图。例如:在缩放级别 16 时,我可以看到一个城市名称,但是当我放大到 zoom17 时……该城市名称不再出现在视图中……这可行……但在旧的之前总是有一点延迟地图数据消失。

我已经看到了如何更改缩放动画速度……但不是这个特定的东西。我认为这可能与我正在使用透明地图这一事实有关......

感觉就像一个 setTimeout 函数来擦除以前缩放级别的“旧”地图。我只是想加快速度。

编辑:我查看了代码并找到了这个函数:_onZoomTransitionEnd 并看到它附加了超时,但是我更改了超时时间,它似乎没有做任何事情。

EDIT#2:经过进一步调查......我在传单 .7.7 中遇到了这个问题。但不是最新版本的传单(1.0.1 和 beta)。但是,最新版本在平移操作期间不会加载图块……它会一直等到平移完成,直到加载图块。 Leaflet 77 不会这样做,它会“即时”加载。所以我想我有两个选择:使用延迟缩放删除前一层的地图....在地图上。我认为选项 #1 可能是破坏性最小的。

编辑#3:现在一切都在 Leaflet 1.0.1 上运行,所以也许我快疯了。再次感谢制作传单的人们……你们太棒了。

【问题讨论】:

    标签: javascript maps leaflet


    【解决方案1】:

    听起来您可能对zoomAnimation 地图选项感兴趣。

    当此选项设置为false 时,Leaflet 不再从之前的缩放级别拉伸磁贴,直到收到新缩放的磁贴。取而代之的是,由于立即删除了所有先前的图块,地图会“闪烁”。

    演示:https://jsfiddle.net/3v7hd2vx/152/

    【讨论】:

    • 这很棒...除非使用没有缩放动画的手机...它根本无法工作。当您开始缩放时,您不知道地图在哪里缩放......毕竟,您只是神奇地出现在某个地方。尝试在手机中关闭 zoomAnimation,你就会明白我在说什么
    猜你喜欢
    • 2018-05-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多