我正在製作一個通過JSON中的REST API加載一些區域亮點的地圖。這個JSON非常大,所以我想在地圖上加載一個加載屏幕,直到API調用返回。我試過了:Google Maps API - 用於API/JSON加載的事件偵聽器?
document.getElementById('spinner').style.visibility = "visible";
map.data.loadGeoJson(mapurl);
document.getElementById('spinner').style.visibility = "hidden";
但是顯然加載是異步發生的,所以這沒有實現。
二審:
document.getElementById('spinner').style.visibility = "visible";
map.data.loadGeoJson(mapurl);
google.maps.event.addListener(map, 'idle', function(){
document.getElementById('spinner').style.visibility = "hidden";
})
這是好多了,現在我有一個載入畫面,然而,idle
獲取地圖加載後立即調用,而不是JSON。有沒有一種方法可以偵聽JSON文件被完全加載/ API調用返回的事件?
'loadGeoJson'接受一個可選的回調將被解僱一旦所有的功能都裝載,即'map.data.loadGeoJson(mapurl,回調) '。所以,把你的回調放在那裏。 –