3

Googleマップマーカー(v3)からHTML要素を取得するには?

<div style="overflow-x: hidden; overflow-y: hidden; position: absolute; background-image: url(...); top: 62px; width: 70px; height: 70px; background-size:  ; left: 924px; z-index: 97; opacity: 0,01; cursor: pointer; background-position: 0px -420px; background-repeat: no-repeat no-repeat; " title=""></div>

ここにすべてのマーカーがmap.getPanes().overlayImage;ありますが、どの子が私のマーカーなのかわかりません...

4

1 に答える 1

6

各マーカーのタイトル属性に一意の ID を割り当て、その ID を持つマーカーが見つかるまですべてのマーカーを検索できます。

for (var marker in map.getPanes().overlayImage.getElementsByTagName("div")) {
  if (marker.title == "some_id") return marker;
}

最後の手段として、サーバー側スクリプトを使用して、各画像の一意の ID クライアント側を生成することもできます。ファイル名 (つまり、mysite.com/marker/De4gy.png) に関係なく、サーバーは同じ画像 (マーカー アイコン) を返します。その後、スタイル属性にその URL を含む DIV を探して DOM をクロールできます。マーカーはキャッシュできなくなるため、パフォーマンスが低下する可能性があることに注意してください。

API によってマーカーが DOM に追加される方法を変更すると、上記のすべてが機能しなくなる可能性があることに注意してください。

于 2010-08-05T04:55:18.573 に答える