2011-08-31 127 views
24

如何知道谷歌地圖何時處於街景模式或路標模式?有沒有事件被解僱?我試着翻看文檔,似乎沒有任何東西。我錯過了什麼嗎?檢測谷歌地圖街景模式

當用戶切換到街景模式時,我希望UI改變,但我不知道要綁定哪個事件。

回答

51

檢測與您的Map對象關聯的StreetViewPanorama上的visible_changed事件。您可以通過調用其getStreetView()方法從地圖獲取全景圖並將處理程序綁定到該對象的事件。您必須通過調用getVisible()方法來測試StreetViewPanorama的可見性。

例如:

var map = new google.maps.Map(document.getElementById("theMap"), {streetViewControl: true}); 

var thePanorama = map.getStreetView(); 

google.maps.event.addListener(thePanorama, 'visible_changed', function() { 

    if (thePanorama.getVisible()) { 

     // Display your street view visible UI 

    } else { 

     // Display your original UI 

    } 

}); 

StreetViewPanorama Object Documentation的你可以偵聽此對象的更多事件的事件部分。

+0

是的,我設法找出了昨晚深夜,謝謝,雖然:D – userinev

+0

@userinev Doh,我發佈了15分鐘內你的要求,嘿嘿。太糟糕了,你沒有早點回來。 :[ – lsuarez

+0

由於某些原因,每次進入/退出事件對我而言都會觸發不止一次的事件。 –