2

我正在使用 Google Street view API 并且想要禁用除平移和缩放之外的所有控件。如果您单击或双击它会将您的位置更改为该位置。现在我正在使用 'position_changed' 事件来检查用户是否更改了位置,然后尝试将位置重置为原始位置。这是一个黑客,但我发现这一切都是可能的。我遇到的问题是我陷入了无限循环。

        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

1 回答 1

5

设置选项clickToGoscrollwheel_panoramafalse

于 2012-12-22T01:53:16.243 回答