我正在使用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语句。有没有人知道任何其他方法来禁用此功能?它们允许您禁用所有控件,但不能禁用双击和鼠标滚轮。任何帮助将不胜感激。感谢。
答案 0 :(得分:4)
将clickToGo
的选项scrollwheel
和panorama
设置为false