問題タブ [markerclusterer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1018 参照

javascript - Google マップでイベントをシミュレートする方法はありますか?

Google マップのすべてのマーカーにクリック リスナーを追加しました。これらすべてのマーカーを MarkerCluster に追加しました。この MarkerCluster にクリック リスナーを追加しました。クラスターをクリックすると、デフォルトでその領域にズームインします。その動作の代わりに、クラスター内のすべてのマーカーを同時にクリックしたことをシミュレートするにはどうすればよいですか?

クリック イベントを発生させずにシミュレートするにはどうすればよいですか?

0 投票する
1 に答える
1586 参照

javascript - マーカー クラスタラーを使用すると、移動したマーカーが消える

多数のマーカーを持つアプリケーションがあります (そのため、Marker Clusterer を使用したい) が、ユーザーがマーカーを移動できるようにしたいと考えています。残念ながら、マーカーは移動後にズームアウト/ズームインすると消えます。正確には、これらは問題を再現する手順です。

  1. すべてのマーカーを作成し、それらをマーカー クラスター オブジェクトに追加します。
  2. ズームインして個々のマーカーを表示します。
  3. マーカーを新しい場所に移動します。
  4. クラスタリングが始まるまでズームアウトします (そして、移動したマーカーを少なくとも 1 つの他のマーカーとグループ化します)。
  5. ズームインして、移動したマーカーを確認します。

ズームインした後もマーカーが残っていると思いますが、そうではありません。手順 3 の後、マーカーは表示されたままになります。ズームアウトしてから元に戻した後にのみ消えます。クラスタリングではマーカーが正しくカウントされますが (ズームアウトするとクラスターの合計に表示されます)、マーカーが再び表示されることはありません。

MarkerClusterer と MarkerClustererPlus の最新バージョンを使用してみましたが、マップ API の v3 を扱っています。さらに、マーカーが発生repaintした後にクラスターを呼び出すイベントリスナーがあります (マーカーが適切に配置されると考えています)。dragendrepaint

[編集] 問題を示す最小限の例 (Marker Clusterer の例に基づく) は、ここにあります。この例から変更されたのは、javascript ライブラリ (絶対リンクを作成) を含む行draggable: trueと、マーカー オプションへの追加だけです。上記の 5 つの手順に従うと、問題が再現されます。

0 投票する
4 に答える
8440 参照

javascript - Googleマップ:markerclustererの上にマーカーをレンダリング

マップ上にクラスター化されるマーカーのセットがあります。別のマーカーのセットが個別に表示されますが、クラスターの上に表示する必要があります。クラスタオプションオブジェクトでzIndexを設定しようとしましたが、2番目のマーカーセットよりも低く設定しましたが、役に立ちませんでした。これについてどうやって行くのか考えていますか?

0 投票する
3 に答える
1825 参照

google-maps-api-3 - アニメーション化するとマーカーが消えます

マーカークラスターv3でグーグルマップv3を使用して、数千のマーカーを表示します。各マーカーのタイトルを一覧表示するサイドパネルもあります。ユーザーがパネルのタイトルにカーソルを合わせると、対応するマーカーをアニメーション化し、マウスアウトでのアニメーション化を停止します。

これは、マーカーがクラスター内にない場合に正常に機能します。マーカーがクラスター内にあるときに問題が発生します。

マーカーがクラスター内にある場合は、最初にマーカーのマップオブジェクトをnull(以前はmarkerClustererによって設定されていたため、クラスターに配置するとマーカーが非表示になるように設定)からマップオブジェクトに変更してから、マーカーをアニメーション化します。繰り返しますが、これは機能します。私が問題を経験するのはマウスアウトです。

マウスアウト時に、マーカーアニメーションをnullに設定してから、マーカーのマップオブジェクトをnullに設定しました。これはあなたが期待することをします(マーカーを非表示にします)が、その後のホバーイベントでマーカーを再び表示することはできません。マーカーは適切なクラスターオブジェクト内にまだ存在しており、setMap()を呼び出してマーカーのマッププロパティを設定できますが、マーカーはマップに表示されません。関連するコードは次のとおりです。

2つのsetAnimation()呼び出しをコメントアウトすると、コードが機能し、マーカーを表示したり、期待どおりに非表示にしたりできます(アニメーション化されていないだけです)。また、コンソールをいじってみると、クラスターの外にマーカーを表示してから、アニメーション化してから、アニメーション化を解除してから、何度も何度も非表示にすることができます。しかし、マーカーのアニメーションを解除する前にsetMap(null)を呼び出すと、バグが発生します。

したがって、この問題は、setMap(null)を呼び出す前にアニメーションが停止していない場合にのみ発生します。setMapを呼び出す前にアニメーションを数百ミリ秒停止するようにタイマーを設定しようとしましたが、これは機能する場合もありますが、他の、さらに悪い動作をトリガーする場合もあります。

これを解決するための助けをいただければ幸いです(そして熱心に受け入れられます)!

0 投票する
1 に答える
1473 参照

google-maps-api-3 - 定義されたマーカー数より少ない数のマーカークラスターを無効にする方法はありますか?

MarkerClustererが必要です。4未満のマーカーをクラスター化しないでください。2つのマーカーでもすべてのマーカーをクラスタリングしています。

それを設定するための可能な方法はありますか?

0 投票する
1 に答える
1051 参照

api - Javascript で動的にロードされた Google Map API: マーカー ポップアップをクリックします。

だから私は次のように動的にロードされた作業中のマップを持っています:

私がやりたいことは、マーカーポップアップにタイトルとアドレスをエレガントにロードすることです...これらの2つの値はphpからのものです:

現在これを行っていますが、アラートで...

では、マーカーの上のポップアップに表示されるように設定するにはどうすればよいでしょうか?

助けてくれてありがとう!

0 投票する
1 に答える
4654 参照

javascript - Google MapsMarkerClustererv3とViewportMarkerManagementの組み合わせ

MarkerClusterer v3とビューポートマーカー管理の両方を正常にセットアップしました(ビューポートで表示されるマーカーのみを収集するためにajax呼び出しを実行し、マップが「アイドル」の場合は常にそれらをレンダリングします)。

ただし、これらを組み合わせると、ページが最初に読み込まれたときにのみ機能し、その後は機能しないように見えます。

ズームまたはパンすると、最初のクラスターが残り、マップ全体のマーカーはクラスター化されていない状態でレンダリングされますが、以前にクラスター化されたマーカーは残ります。

元のクラスター化されたマーカーは、ズームイン/ズームアウトしても正しく動作しますが、ビューポートの境界が変更されたときに提供される新しいマーカーは、それらに追加またはクラスター化されません。

以下のコード:

0 投票する
1 に答える
1870 参照

java - クラスターマーカーOpenStreetMapjava

現在、あるプロジェクトでは、PhotSpothttp://code.google.com/p/android-playground-erdao/wiki/PhotSpotに基づくClusterMarkerでGoogleMapsを使用してい ます。参照されているライブラリをgooglemapsからmapsforgeに置き換えて、mapsforgeライブラリ( http://code.google.com/p/mapsforge/
) でOpenStreetMapを使用するように変換しようとしました。

ClusterMarker( http://code.google.com/p/android-playground-erdao/source/browse/trunk/SampleClusterMap/src/com/erdao/)に基づくカスタムクラスのmapsforgeライブラリのメソッドをオーバーライドして実装する必要がありますandroid / mapviewutil / markerclusterer / ClusterMarker.java)photspotから、ここで壁にぶつかりました。

Javaのopenstreetmapにクラスターマーカーオーバーレイを作成しようとした人はいますか、それとも役立つオープンソースライブラリを知っている人がいますか?

0 投票する
3 に答える
4069 参照

google-maps-api-3 - Google Maps v3 MarkerClustererPlus タイトルの変更

クラスタ化されたアイコンのクラスタ タイトル、ロールオーバー テキストを動的に設定しようとしています。クラスター数/合計をロールオーバー テキストで使用したい。

を通して、 が のセットに変更されているconsole.logことがわかります。にも対応しています。クラスターのデフォルトのタイトルは更新されていないようで、デフォルト値のままです。titlevar txtalert( txt )""

現在、タイトルを に設定していgoogle.maps.event.addListener( markerClusterer, 'mouseover', function( cluster ) {})ます。

私のコードは引き続き実行されていると考えています。それが変更が見られない理由かもしれませんが、それを絞り込むことはできませんでした。

どんな助けでも大歓迎です。ありがとう!

編集:1

Rickによって提案されたソリューションに基づくソリューションがあります。

onAdd メソッドを変更しました。

編集: 2 - 最終的な解決策

リックが提案したように、show以前のonAdd方法に対して方法に変更を加えました。MarkerClustererPlus の元のソース ファイル以外のファイルに変更が加えられています。

0 投票する
1 に答える
365 参照

javascript - 配列で異なるJavascriptの長さの結果

私は現在、Google Maps API v3、jQuery、およびMarkerClustererを使用しています。

「長さ」の結果に奇妙な問題があることに気づきました。だから、私はあなたに私のコメントされたコードを見せます:

ファイルdata.jsonには、約1800個のオブジェクトが含まれています。

要約すると、このコードは少なくとも1つのアラートで完全に機能します... 2つのアラートを削除すると、このコードは機能しません。

よろしくお願いします