我正在为客户设置一些全景之旅,我注意到一个我似乎无法解决的问题。
标记未显示在我的街景全景中。
使用从官方示例派生的一些代码,我已经能够复制问题:
- 作品:http://jsfiddle.net/kStR3/1/
- 不起作用:http://jsfiddle.net/6KhkH/1/
区别似乎在于如何获得街景全景......
在有效的示例中,panorama
直接来自map对象:panorama = map.getStreetView()
在失败的示例中,panorama
通过panorama = new google.maps.StreetViewPanorama
创建,并使用map.setStreetView(panorama)
分配给地图。
但就我而言,我无法使用map.getStreetView()
,因为以幻灯片方式运行的全景图数量不定。
有没有办法让标记/叠加层显示在实例化的街景全景中?
我想一个后备方案是覆盖一些<div>
元素并根据.getPov()
和.getPosition()
计算它们的屏幕位置和可见性,但这可能比我的预算要多。
我认为文档的意思是这样的:
var infoMarker = new google.maps.Marker({
position: { lat: 42.34550, lng: -71.09830 },
map: map,
icon: 'https://chart.apis.google.com/chart?chst=d_map_pin_icon&chld=info|FFFF00',
title: 'Info'
});
cafeMarker.setMap(panorama);