【发布时间】:2011-11-07 06:44:32
【问题描述】:
我如何知道 google 地图处于街景模式还是路线图模式?有没有被触发的事件?我尝试浏览文档,似乎没有任何内容。我错过了什么吗?
当用户切换到街景模式时,我希望 UI 发生变化,但我不知道要绑定到哪个事件。
【问题讨论】:
标签: javascript google-maps google-maps-api-3
我如何知道 google 地图处于街景模式还是路线图模式?有没有被触发的事件?我尝试浏览文档,似乎没有任何内容。我错过了什么吗?
当用户切换到街景模式时,我希望 UI 发生变化,但我不知道要绑定到哪个事件。
【问题讨论】:
标签: javascript google-maps google-maps-api-3
在与您的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 的事件部分,了解您可以在此对象上侦听的更多事件。
【讨论】: