我正在尝试嵌入多个占据整个页面的街景全景图(技术上是光球) - 一次只能看到一个。
我想我会创建单独的全景图并将它们附加到不同的div,隐藏除活动div 之外的所有内容,然后使用一些缩略图链接使用 jQuery 隐藏和显示相关的div。
这几乎有效,但最初隐藏的全景图不显示任何图像(控件在那里,但不是图像本身)。
我需要在 API 中设置什么吗?或者也许有更好的方法可以做到这一点?
我现在的代码是:
function carparkPano() {
var carparkID = "GPHkasenHbQAAAAGOrVDmQ";
var carpark = {
pano: carparkID,
pov: {
heading: 290,
pitch:15
},
zoom: 0,
addressControl: false
};
var myPhotoSphere = new google.maps.StreetViewPanorama(
document.getElementById('pano1'),
carpark);
myPano.setVisible(true);
}
function rooftopPano() {
var rooftopID = "VaIS8soJyPAAAAAGOsbvQA";
var rooftop = {
pano: rooftopID,
pov: {
heading: 0,
pitch:10
},
zoom: 1,
addressControl: false
};
var myPhotoSphere = new google.maps.StreetViewPanorama(
document.getElementById('pano2'),
rooftop);
myPano.setVisible(true);
}
google.maps.event.addDomListener(window, 'load', carparkPano);
google.maps.event.addDomListener(window, 'load', rooftopPano);
有什么想法吗?
谢谢
我认为您可能需要在显示div后对其进行初始化,因此它最终看起来像这样:
$(document).on('click', '#idOfElementTriggeringMap', function(){
$('#pano2').show();
ininitalizeMap('pano2');
}
});
function initializeMap(map){
// do map initialization here...
}
更新
从那以后,我发现了另一篇建议在显示div 后调用地图大小事件的文章,我认为这将具有相同的效果:
隐藏区域的谷歌地图显示