2

我正在使用Google街景視圖API,並希望禁用除平移和縮放以外的所有控件。如果您點擊或雙擊,它會將您的位置更改爲該位置。現在我正在使用'position_changed'事件來檢查用戶是否改變了位置,然後嘗試將位置重置爲原始位置。這是一個黑客,但它的一切我發現可能。我遇到的問題是我陷入無限循環。Google街景視圖API:通過雙擊禁用更改位置

 var origPosY = panorama.getPosition().Ya, 
      origPosX = panorama.getPosition().Za, 
      originalPos = new google.maps.LatLng(panorama.getPosition().Ya, panorama.getPosition().Za); 

     google.maps.event.addListener(panorama, 'position_changed', function() { 
      //console.log('Position changed',panorama.getPosition().Ya, panorama.getPosition().Za); 
      //var newPos = new google.maps.LatLng(panorama.getPosition().Ya, panorama.getPosition().Za); 
      if(origPosY != panorama.getPosition().Ya){ 
       console.log('Resetting pos'); 
       panorama.setPosition(originalPos); 
      } 

     }); 

看來,當我檢查,以確保他們不同它仍然進入if語句。有誰知道任何其他方式來禁用此功能?他們讓你禁用所有的控件,但不是雙擊鼠標滾輪。任何幫助將不勝感激。謝謝。

回答

4

設置選項clickToGopanoramascrollwheelfalse

+0

謝謝你這個作品!這怎麼沒有在其他地方列出?再次感謝我嘗試投票,但沒有足夠的聲望。 – unclejam

+0

它被列在api文檔中:https://developers.google.com/maps/documentation/javascript/reference?hl=zh-CN#StreetViewPanoramaOptions –

+0

哇,在之前根本沒有看到... – unclejam

相關問題