1

Googleマップの特定のインスタンスでは...

最初の中央マップの左右に並べて表示されるマップの他のインスタンスをオフにする方法はありますか?

マップのパン機能を制限する方法を見てきました...しかし、緯度と経度を使用して、マップを再中心化するタイミングを決定します...したがって、ズームレベルが異なると使用法が崩れます。

例: https://google-developers.appspot.com/maps/documentation/javascript/examples/map-simple

ズームアウトすると、地球の地図が x 軸に沿ってどのようにタイル表示されるかがわかります。

マップの単一のインスタンスが必要です。

4

1 に答える 1

0

zoom_changedイベントにオブザーバーを追加し、90 度を超えるマップが表示される場合はminZoomを設定できます。2 番目のステートメントは、限界がわかる前に、ズームを許容限界まで再帰的に減らします。

var zoomObserver = function () {
    width = Math.abs(map.getBounds().getNorthEast().lat() - 
        map.getBounds().getSouthWest().lat());
    if (width > 90){
            var opt = { minZoom: map.getZoom()};
            map.setOptions(opt);
    }
    if (width > 179){
        map.setZoom(map.getZoom() + 1);
    }
};
google.maps.event.addListener(map,'zoom_changed', zoomObserver );

この単純なソリューションはほとんどのユース ケースで機能しますが、ブラウザ ウィンドウのサイズを変更してマップの幅を 2 ​​倍にすることは考慮されていないため、その場合は別のイベントにオブザーバーを追加する必要がある場合があります。

于 2013-01-03T09:08:57.727 に答える