【问题标题】:How can I force Google Maps to render to polylines mid-loop?如何强制 Google 地图在循环中渲染到折线?
【发布时间】:2016-07-06 15:21:37
【问题描述】:

我有一段代码,用户可以在其中切换大量折线的可见性。要关闭它们,我setMap(null),这很快就会发生。但是通过setMap(map) 打开它们需要很长时间。有没有办法触发谷歌在循环完成之前画出已经添加的线条?

目前的代码是:

for (var i = 0; i < polylines.length; i++) {
polylines[i].setMap(map);
}

我想添加一条像if (i % 100 == 99) 这样的行,它会触发对添加的所有新行的渲染。如何强制 Google Maps API 执行此操作?

【问题讨论】:

  • 通过执行 setMap(null) 可以擦除之前在 for 循环中添加的所有折线。我建议宁愿改变折线的不透明度以切换可见性

标签: javascript google-maps google-polyline


【解决方案1】:

您需要为渲染提供处理器时间。将循环分成多个片段,并使用setTimeout 释放处理器在片段之间进行渲染。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-08-26
    • 2018-04-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-05
    相关资源
    最近更新 更多