0

Google マップ デベロッパー ページの基本的な初期化関数を使用しています。私はマップの使用に少し慣れていませんが、開発者サイトを読んで、私が望むものを達成することができました. 私が見つけることができないのは、初期化がマップをロードした後に関数を呼び出す方法です。たとえば、事前に入力されたフォームの値に基づいてルート案内を更新したい

私はこのようなことを試しました...

google.maps.event.addDomListener(window, 'load', function() {
    initialize();
    updateDirections();
});

Initialize は地図を読み込みます。updateDirections は、ルート案内や Web ページで行うその他の小さなことを行うために呼び出したい関数ですが、地図の読み込みには少し時間がかかるので、updateDirections() を呼び出す必要があると思います。

これを行う最善の方法は何ですか?マップ オプションの callback または onsucess パラメータが利用可能であると考えていたでしょう。

とにかく、私がやろうとしていることは本当に簡単だと思いますが、間違っているか、間違っているかもしれません。間違ったことを探しているだけです。以前に回答されたと確信していますが、私がやろうとしていることを単純に行うものを見つけることができないようです.

ありがとうビッツ

4

1 に答える 1

2

関数内initialize()で、マップを作成し、それへの参照を という変数mapで取得した後、イベントのイベント リスナーを追加しidleます。

google.maps.event.addListenerOnce( map, 'idle', function() {
    updateDirections();
});

そこで行う必要があるのがupdateDirections()関数を呼び出すことだけである場合は、それをアイドル コールバックとして直接使用できます。

google.maps.event.addListenerOnce( map, 'idle', updateDirections );

addListenerOnce()の代わりに を使用していることに注意してください。addListener()このイベント リスナーは、イベントが最初に発生したときにのみ呼び出されます。使用addListener()すると、マップがパンまたはズームされるたびに起動します。

于 2013-07-15T01:20:08.903 に答える