2013-02-19 7 views
7

Mam mapę, która jest w załadunku dynamicznego zewnętrznego z oznaczeń miejsc KML zdefiniowane tak:wyzwalania zdarzenia kliknięcia na oznaczenia miejsca Google Maps KML

<Placemark id="MapZoneID_23443"> 
    <name>Name Here</name> 
    <description>Text Here</description> 
    <styleUrl>#ff8080ff</styleUrl> 
    <Polygon> 
     <outerBoundaryIs> 
      <LinearRing> 
       <coordinates> 
        .... 
       </coordinates> 
      </LinearRing> 
     </outerBoundaryIs> 
    </Polygon> 
</Placemark> 

Co chciałbym zrobić, to mieć związek/rozwijana/cokolwiek można kliknąć lub wybrać, aby wywołać kliknięcie na $('#MapZoneID_23443') ... ale nie wiem, jak wywołać to kliknięcie lub jeśli jest to nawet możliwe. Mapy mogą być dość skomplikowane, więc wolałbym nie mieć wstępnego ładowania wszystkiego przy użyciu znaczników gms JS. Dzięki!

Odpowiedz

1

Znalazłem obejście.

Dodaj to do oznaczenia miejsca w sekcji <style>

<BalloonStyle><text>TEXT</text></BalloonStyle> 

Będziesz mieć dostęp do tej wartości po kliknięciu w .js zwrotnego jako

event.featureData.info_window_html 

Tak w pliku KML

<Placemark id="MapZoneID_23443"> 
    <BalloonStyle><text>TEXT</text></BalloonStyle> 
    ... 
</Placemark> 

I w javascript

google.maps.event.addListener(kmlLayer, 'click', function(event) { 
    var content = event.featureData.info_window_html; 
    console.log(content); 
}); 
Powiązane problemy