2011-02-14 26 views
1

我爲jQuery使用gMap插件,需要在地圖初始化後調用本地Google Map API的「調整大小」方法。任何人都可以告訴我如何實現這一目標?如何使用gMap jQuery插件觸發Google地圖API方法?

我初始化我的地圖元素這樣一來,按照該gMap plugin documentation

var defaults = { 
    latitude: 0, 
    longitude: 0, 
    zoom: 2, 
    scrollwheel: false 
}; 
$('#myMap').gMap(defaults); 

,地圖顯示中最初隱藏的標籤,這是我知道的原因,得出問題的谷歌地圖API (後來我們很多人似乎都是Web開發人員)。

我試過在每次顯示標籤頁時都設置地圖init,但是這會導致閃爍並導致地圖顯示重置爲默認狀態 - 不幸的是,這兩者都不可接受。

因此,通過gMaps觸發API的「調整大小」方法;我試過顯示選項卡的內容時以下,但他們沒有工作:

$('#myMap').resize(); 

$('#myMap').gMap(resize); 

google.maps.event.trigger(myMap, 'resize'); 

$(window).resize(); 

我試過要求從gMap Twitter account幫助,但它似乎已被摒棄。

我真的很感激比我更好的大腦解釋當我使用jQuery的gMap插件時如何調用GMap方法。

+0

我會鼓勵你來處理與谷歌地圖的互動這裏API自己或找另一個插件。您使用的插件引用了棄用的v2地圖庫,並且爲了將地圖對象從該函數中退出,您需要修改插件源以存儲對$ gMap對象的引用 - 可能是關聯的jQuery數據存儲 - 以便稍後再次找到它。 – lsuarez 2011-02-14 19:36:21

+0

我懷疑我可能需要以某種方式破解插件中的GMap對象,或者在插件之外運行本機API實例/引用以重新獲得某些API方法的訪問權限。煩人。 – markedup 2011-02-15 08:41:40

回答

0

好的,我想我會切換到本地Google Maps API的v3版本並從此繼續。

在gMaps防禦中,雖然沒有增加功能,但它確實簡化了設置地圖併爲其添加標記。這就是爲什麼它首先吸引我的原因。

感謝您的反饋。

+0

我現在已經使用本機GMaps v3 API解決了這個問題。我觸發了我的地圖對象的resize()方法,作爲我的選項卡切換功能的一部分,並且按照我的想法工作(例如,有狀態,無閃爍)。 – markedup 2011-02-16 09:38:10

相關問題