2011-09-27 89 views
2

我正在編寫使用谷歌地圖的網絡應用程序。我有一些點作爲標記放置在地圖上。當我拖動標記 - 它會提起 - 當我放下它時 - 它會掉下來。我想避免提高標記。有沒有辦法在沒有提高的情況下拖動它?谷歌地圖和提高標記

回答

0

由於創建標記時沒有選項,我猜這是沒有辦法的。

唯一可以想象的就是使用圖標(在參考文獻中有一個例子)。 但是你必須嘗試,我不知道是否自制圖標被提出。

+0

我使用自定義圖標 - 彩色箭頭。事實上,這就是爲什麼我需要避免提高成績的原因。當我拖動「UpArrow標記」時,它的指針隱藏在凸起標記的身體後面。 –

0

您可以使用marker.setAnimation()方法:

var marker = new google.maps.Marker({...}); 
google.maps.event.trigger(marker, 'dragstart'); // trigger dragstart to keep marker in the "raised" state" 
marker.setAnimation(3); // raise 
// later 
marker.setAnimation(4); // fall 

Google Maps API只有兩種類型的記錄動畫(BOUNCE和DROP),但我已經發現了兩個:

1: BOUNCE, 
2: DROP, 
3: raise, 
4: fall 
2

自問題提出後可能已添加此功能,但現在停止提升標記非常簡單。

創建標記時,將其「raiseOnDrag」屬性設置爲false。是這樣的...

marker = new google.maps.Marker ({draggable : true, raiseOnDrag : false}); 
+0

注意:該屬性即將更改爲「crossOnDrag」(https://developers.google.com/maps/documentation/javascript/basics#VisualRefreshChanges) –