【问题标题】:Is there a GeoJSON load event on Google Maps?Google 地图上是否有 GeoJSON 加载事件?
【发布时间】:2014-11-03 16:43:09
【问题描述】:

我目前正在制作一张使用 GeoJSON 加载国家边界和信息的地图,以及一些应该附加到这些国家的内部数据。数据位于通过以下代码加载的两个数据层中:

Data[MapType] = new google.maps.Data();
Data[MapType].loadGeoJson(jsonPath, {idPropertyName:geoJSONID});
Data[MapType].setStyle(dataStyle);
Data[MapType].setMap(Map);

它工作正常,数据正在加载,鼠标悬停事件处理程序响应良好。但是我想在geoJSON文件完成加载和显示时隐藏加载器覆盖,但到目前为止我还没有找到一种方法来监听这种事件。

我在another stackoverflow thread 上看到了有关 KML 收听metadata_changed 事件的内容,但它不会触发我地图上的任何内容。 API 参考也没有多大帮助。

你们中有人知道什么时候可以知道 geoJSON 数据何时完成加载和显示吗?

非常感谢。

【问题讨论】:

    标签: javascript google-maps geojson


    【解决方案1】:

    地图对象有一个idle 状态,应该可以像这样访问它:

    google.maps.event.addListenerOnce(map, 'idle', function() {
        console.log('loaded');
    });  
    

    【讨论】:

      【解决方案2】:

      This question 扩展了 datafunk 的答案,并提供了一种利用空闲状态的解决方法。 (本来会添加为评论,但用于链接)

      【讨论】:

        猜你喜欢
        • 2011-10-20
        • 2020-03-28
        • 2011-08-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-11-24
        • 2019-04-04
        相关资源
        最近更新 更多