誓うことができたら、Google Maps JavaScript API v3 を使用して、マップ マーカー アイコンが空から落ちてマップに着地したように見える効果を作成するデモを見ました。
API を見ることを含め、検索して検索しましたが、その例が見つかりません。
このユースケースを達成する方法について、誰か詳しい情報はありますか?
ありがとう
誓うことができたら、Google Maps JavaScript API v3 を使用して、マップ マーカー アイコンが空から落ちてマップに着地したように見える効果を作成するデモを見ました。
API を見ることを含め、検索して検索しましたが、その例が見つかりません。
このユースケースを達成する方法について、誰か詳しい情報はありますか?
ありがとう
giogigaが提案するように拡張するのがおそらく最も安全な方法ですが、アイコン、影、ドラッグ可能性などの組み込みのものがたくさんあるOverlayView
ため、明らかに簡単な方法ではありません。Marker
クラスを拡張するのは本当に魅力的Marker
ですが、そのクラスは不透明です。たとえば、マーカーをアニメーション化する必要がある基になるDOM要素に簡単にアクセスできないなど、その内部は明らかになりません。で何かを一緒にハックすることもできますsetPosition
が、結果は壊れやすくバグの多いものになります。または、基盤となるDOMノードに侵入することもできますが、その場合はさらに脆弱になる可能性があります。
したがって、完全に再実装することMarker
が依然として最善の方法のようです。
最新の3.3ビルドでは、アニメーションを追加するだけです:google.maps.Animation.DROP
マーカーを作成するときにプロパティのリストに追加します。それはあなたのためにそれをすべて行います。バウンスも可能ですが、一度だけバウンスして停止する簡単な方法がないと、それだけの価値があるよりも厄介であることがわかりました。
Google APIについてはよくわかりませんが、単純なjQueryでこれを実行できることは知っています。
マーカー アニメーションは v3 API の一部になりました。
http://code.google.com/apis/maps/documentation/javascript/overlays.html#MarkerAnimations
を拡張するカスタム マーカー クラスを実装する必要がありますgoogle.maps.OverlayView
。
基本的には、onAdd/onRemove (アニメーションを開始するのに適した候補) と draw (おそらくマーカーの位置を更新するだけ) の 3 つのメソッドを実装することになります。