2013-07-25 107 views
3

出於某種原因,我的地圖上有一個很大的灰色區域,直到我移動它才顯示。Leaflet/Mapbox渲染問題(灰色區域)

但第一次看,有一部分失蹤。我以前在網絡上看過很多,但從未想過如何解決它。

這是一個使用MarkerClusterGroup進行羣集的簡單Mapbox地圖。

下面是截圖和鏈接的網頁: enter image description here

http://vinpin.com/map

所以我想知道,是有這種行爲的任何已知的容易修復?

如果需要,我可以添加代碼片段。

謝謝,祝你有美好的一天!

回答

6

自初始化以來,似乎地圖元素大小已發生變化,並且未使其無效。

是否更改了可見性(如:display: none風格),位置(例如,position: absoluteposition: fixed像詞綴),或(與JS)動態刪除任何HTML元素?也許,你是加載錯誤的順序資源和樣式加載後leaflet.js?或者,也許你改變了利潤或填充?這些操作可以隱式更改其他元素的大小,Leaflet小程序僅爲舊區域覆蓋的區域加載區塊。不過,它會在這個「灰色」區域中正確顯示已經加載的瓷磚,因此您可以向上滾動,然後底部的灰色空間將被填充。

如果是這種情況,您應該在您的Leaflet地圖對象上執行invalidateSize()方法。

+0

在我的情況下,我只是稍稍延遲了傳單設置(setTimeout)以使DOM時間穩定下來。完美的作品! – Offirmo