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 ステートメントの中に入っているようです。この機能を無効にする他の方法を知っている人はいますか? すべてのコントロールを無効にできますが、ダブルクリックとマウス ホイールは無効にできません。どんな助けでも大歓迎です。