2010-09-23 99 views
6

我真的希望有人可以建議從隱藏的div顯示谷歌地圖。從隱藏區域顯示谷歌地圖

我有我想要向用戶展示,如果他們點擊一個鏈接即顯示地圖一個谷歌地圖。

把在一個隱藏的div地圖只是沒有在所有的工作,所以我就跟着躲在一個位置絕對CSS值地圖-1000px。

這給了我更好的結果,但是當我使用CSS來把地圖背在只有它的顯示。

http://screencast.com/t/MTMyOGZmNW

誰能給我提出建議的最佳方式有一個隱藏的地圖變得可見後,我一個[執行秀?

希望有人能建議。

謝謝

回答

25

你不必與絕對位置和所有的麻煩。讓DIV被隱藏,直到需要,然後再顯示它並調用google.maps.event.trigger(map, 'resize')(V3)或map.checkResize()(V2)

在評論中提到的其他情況:

,請務必讓google.maps.event.trigger(map, 'resize')前調用map.fitBounds()或者你會得到意想不到的效果。

+0

嘿,謝謝。我嘗試了V2的map.checkResize(),並且我沒有定義錯誤地圖。是的,我知道我正在使用v2。有什麼建議麼 ? – Lee 2010-09-23 22:22:48

+0

唉我知道了。我正在使用jQuery插件。 $ .googleMaps.gMap – Lee 2010-09-23 22:25:20

+0

你什麼時候調用google.maps.event.trigger(map,'resize')?你可以把它放在你單擊鏈接時隱藏(然後顯示)的div的onclick事件上嗎? – Bill 2010-11-04 14:37:40

2

爲什麼不推遲渲染地圖直到顯示div?

粗糙代碼:

$("button").click(function() { 
    $(mapDiv).show(); 
    new google.maps.Map(mapDiv, opts); 
}); 
+1

如果它重複隱藏和顯示?你不是在創建很多地圖對象,但從來沒有銷燬它們。 – Mawg 2014-06-08 04:15:15