1

私はかなり検索しましたが、これを理解できません。v2 から v3 にマップを更新しています。これにより、ユーザーはマップ コンテナーのサイズを変更できます。コンテナーのサイズを変更した後、v2 で行ったところ、うまくいきmap.checkResize()ました。v3 バージョンの場合、使用map.fitBounds(map.getBounds())しましたが、何も表示されません。コンテナーの中心に十字線マーカーを維持しているので、v3 のサイズ変更が正しく機能していないことは明らかです。

また、境界関数を「bounds_changed」イベント コールバック関数、map.setOptions(mapOptions)およびコールバックの内外の両方に配置しようとしました。マップがコンテナー サイズの変更を認識していないことは明らかです。新しいコンテナー サイズをマップに認識させるにはどうすればよいですか?

これは現在ローカル テスト サーバー上にあるため、リンクを提供できません。実稼働サーバーで実例となるサンプルを作成することもできますが、これが十分に一般的な質問であり、それが不要になることを願っています。特定のコードは必要ありません。新しいコンテナー サイズでマップを適切に機能させるために必要な基本的な手順を知りたいだけです。

4

1 に答える 1

1

v2map.checkResize()では、v3 のコードは次のように使用します。

google.maps.event.trigger(map, 'resize');

そして、次のようにマップ コンテナーのサイズを取得します。

var mapDiv = map.getDiv();
var size = new google.maps.Size(mapDiv.offsetWidth, mapDiv.offsetHeight);
于 2012-11-21T22:13:24.207 に答える