2

Google ストリート ビュー 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

オプションclickToGoscrollwheelpanoramaに設定しますfalse

于 2012-12-22T01:53:16.243 に答える