Google マップ API を使用して自分のページでこの問題に激怒しています。マーカー (アイコン付きの白) をクリックすると、情報ウィンドウが適切に表示されます。ただし、青いクラスターをクリックすると、情報ウィンドウが表示されますが、マップの位置がアフリカ近くの海に移動します。次のサイトをご覧ください: http://pec.solarismedia.net/map.html
なぜそれが起こるのか、それを回避する方法を私に説明できる人はいますか?
前もって感謝します
Google マップ API を使用して自分のページでこの問題に激怒しています。マーカー (アイコン付きの白) をクリックすると、情報ウィンドウが適切に表示されます。ただし、青いクラスターをクリックすると、情報ウィンドウが表示されますが、マップの位置がアフリカ近くの海に移動します。次のサイトをご覧ください: http://pec.solarismedia.net/map.html
なぜそれが起こるのか、それを回避する方法を私に説明できる人はいますか?
前もって感謝します
を作成するとき、を含むべきプロパティをInfoBox与えていません。に渡すオブジェクトを設定するコード内の 2 つの場所が表示されますが、どちらにもプロパティがありません。positionLatLnginfoboxOptionsnew InfoBox()position
これがないため、InfoBoxデフォルトの LatLng は (0,0) になります。次のコードを参照してくださいgmap.infobox.js。
this.position_ = opt_opts.position || 新しい google.maps.LatLng(0, 0);
positionしたがって、にプロパティを追加する必要がありますinfoboxOptions。最初のものについては、myLatLngそのコードのすぐ上で初期化され、マーカーに使用される変数がある場合があります。同じ LatLng を使用する場合は、次のように追加できます。
var infoboxOptions = {
position: myLatLng,
// and your other properties here
};
cluster2 つ目 (クラスター) については、オブジェクトへの参照があるように見えるので、呼び出しcluster.getCenter()てその LatLng を取得できます。
var infoboxOptions = {
position: cluster.getCenter(),
// and your other properties here
};