如何在全景图中设置另一个关闭按钮的功能

时间:2013-05-05 15:05:46

标签: google-maps google-maps-api-3 google-street-view

(对不起我的英语)我有一个问题,,,我正在尝试创建一个用户点击多边形的网页,它将用户移动到另一个页面与谷歌街景全景(我有)。但是,在点击全景图中的关闭按钮后,我还需要一个代码将用户从“全景页面”移回“多边形页面”。我尝试使用与之前用过的相同的代码将用户移动到“全景页面”,但它不起作用(它只是关闭全景,但不会移回“多边形页面”)。这一行:


    google.maps.event.addListener(panorama, "closeclick", function(event) { window.location = "index.html"; })

是将用户移回“多边形页面”(index.html)的代码。这是完整的代码:

function initialize() {

var panoOptions = {
 pano: 'Kuchyn',
 enableCloseButton: true,
 pov: {
     heading: 0,
     pitch: 0,
     zoom: 0
     },
 panoProvider: getCustomPanorama,
 visible: true};

var panorama = new google.maps.StreetViewPanorama(
 document.getElementById('map-canvas'), panoOptions);

function getCustomPanoramaTileUrl(pano, zoom, tileX, tileY) {
     return 'images/Untitled.jpg';}

function getCustomPanorama(pano, zoom, tileX, tiley) {

if (pano == 'Kuchyn') {
 return {
  location: 
   {pano: 'Kuchyn',
    description: 'Kromeriz - Kuchyn'},

  links: [],
  copyright: 'Oznog (c) 2013',
  Heading: 180,

  tiles: 
   {tileSize: new google.maps.Size(4096, 2048),
    worldSize: new google.maps.Size(4096, 2048),
    centerHeading: 180,
    verticalFOV: 90,
    getTileUrl: getCustomPanoramaTileUrl}
};
}
}
}
google.maps.event.addDomListener(window, 'load', initialize);
google.maps.event.addListener(panorama, "closeclick", function(event) { window.location = "index.html"; })

var panoOptions = { pano: 'Kuchyn', enableCloseButton: true, pov: { heading: 0, pitch: 0, zoom: 0 }, panoProvider: getCustomPanorama, visible: true}; var panorama = new google.maps.StreetViewPanorama( document.getElementById('map-canvas'), panoOptions); function getCustomPanoramaTileUrl(pano, zoom, tileX, tileY) { return 'images/Untitled.jpg';} function getCustomPanorama(pano, zoom, tileX, tiley) { if (pano == 'Kuchyn') { return { location: {pano: 'Kuchyn', description: 'Kromeriz - Kuchyn'}, links: [], copyright: 'Oznog (c) 2013', Heading: 180, tiles: {tileSize: new google.maps.Size(4096, 2048), worldSize: new google.maps.Size(4096, 2048), centerHeading: 180, verticalFOV: 90, getTileUrl: getCustomPanoramaTileUrl} }; } } } google.maps.event.addDomListener(window, 'load', initialize); google.maps.event.addListener(panorama, "closeclick", function(event) { window.location = "index.html"; })

请帮助我,Jan。

1 个答案:

答案 0 :(得分:0)

您对于全景的eventListener位于initialize函数之外,请在全景声明下移动它,如下所示:

var panorama = new google.maps.StreetViewPanorama(
     document.getElementById('map-canvas'), panoOptions);

// move it here
google.maps.event.addListener(panorama, "closeclick", function(event) { window.location = "index.html"; });

这是因为您没有将全景图声明为全局变量,因此无法正确附加。其他选项是将其声明为全局变量var panorama;,高于初始化方法。

干杯。