Googleマップのzoom_changedイベントが+/-ズームボタンとユーザーのやりとりによって具体的に発生する時期を知りたい。私がzoom_changedの一般的なイベントリスナーを使用している場合、ユーザーが生成したイベントか、fitBounds()のようなものによるズームの変更かどうかはわかりません。これを行う最善の方法を探しています。Googleマップでユーザー生成ズームを聞くにはどうすればよいですか?
私が動作するようには思えいずれも次のこと、試してみた:
1)zoom_changedのイベント情報を探しました。誰もいないようです。
2)mouseoverとmouseoutのリスナーを追加して、ユーザーが地図の境界にいるかどうかを確認するフラグを設定し、zoom_changedでフラグをチェックします。これはマップがマップフレームの一部としてズームボタンを考慮しないためです(つまり、ズームボタンの上にマウスを移動するとmouseoutイベントがトリガーされます)。
3)通常の(gMapでない)リスナーをズームボタンに追加します。しかし、私はボタンをつかむことができる決定的なCSSセレクターを見つけることができません。
4)gMaps APIのgetZoomElements()のような機能を探して、それを使ってリスナーを設定することができました。
マップにカスタムコントロールを追加すると、奇妙なことは明らかにできます。彼らがデフォルトのズームコントロールにフックを持たせるのではなく、私にそれを強制することは非常に奇妙なようです。
また、マウスホイールについて考えてみましょう。ユーザーがズームを操作する方法は複数あります。 – josh3736
タッチイベントとキーボードについて忘れないでください。 –