3

我有這個代碼,使用自定義谷歌街景全景並創建一些自定義標記。谷歌街景與自定義全景和標記

function initialize() { 

    var panoOptions = { 
     pano: 'a9V_yZU01A7nTQW7S4Hxjw', 
     pov: { 
      heading: 0, 
      pitch:0 
     }, 
     zoom: 0 
    }; 
    var pano = new google.maps.StreetViewPanorama(document.getElementById('virtualTour'), panoOptions); 

    var infowindow = new google.maps.InfoWindow(); 
    var marker, i; 
    var markers = []; 
    var locations = [ 
     ['<div style="width: 170px;">MARKERS 1</div>', 37.869197, -122.254583] 
    ]; 

    for (i = 0; i < locations.length; i++) { 
     marker = new google.maps.Marker({ 
      position: new google.maps.LatLng(locations[i][1], locations[i][2]), 
      map: pano, 
      visible: false, 
      zIndex: 999 
     }); 

     google.maps.event.addListener(marker, 'mouseover', (function(marker, i) { 
      return function() { 
       infowindow.setContent(locations[i][0]); 
       infowindow.open(pano, marker); 
      } 
     })(marker, i)); 
     markers.push(marker); // save all markers 
    } 



    for (i = 0; i < locations.length; i++) { 
     markers[i].setVisible(true); 
     markers[i].setMap(pano); 
    } 

    pano.setVisible(true); 

} 


google.maps.event.addDomListener(window, 'load', initialize); 

我的問題是:爲什麼顯示標記後,才通過谷歌街景箭頭可移動地板上?

我希望在初始化函數上顯示標記。誰能幫我?我爲我的項目創建了一個jsfiddle: http://jsfiddle.net/7HpmE/

在此先感謝!

回答

0

比從未更好的遲到。

我已經能夠解決您的問題,只需在添加標記後重新加載pano即可。 我所做的只是更換以下行:

pano.setVisible(true); 

(全景默認情況下可見)有:

pano.setPano('a9V_yZU01A7nTQW7S4Hxjw'); 

這裏是你的jsfidle的更新版本: http://jsfiddle.net/7mfswdbg/