Получение «неактивного» информационного окна HTML в Google Map - PullRequest
1 голос
/ 01 февраля 2010

Я использую Google Maps API v2 и Geoxml для создания карты, которая извлекает контент. Удобно и легко получить доступ к массиву маркеров в экземпляре Geoxml (instancevar.overlayman.markers), который содержит свойства и методы маркеров. Чего я не могу сказать, так это как добраться до строки HTML, которая появляется, когда активирован метод click на маркере. Я могу использовать JavaScript для активации метода, и я знаю, что метод openWindowInfoHtml определяется при обработке KML / GeoRSS с соответствующей информацией. Доступна ли эта информация где-нибудь во время выполнения маркеров? Или, если нет, где это определяется?

Ответы [ 2 ]

1 голос
/ 03 февраля 2010

Нет ничего в API, чтобы получить HTML. Взглянув на источник Geoxml, он просто вызывает openInfoWindow из события click (передавая html в этот момент), поэтому я не думаю, что вы можете получить его таким образом.

Вы можете изменить источник Geoxml, чтобы связать html с GMarker при его создании, но это не будет тривиальным, так как в библиотеке нет ни единого места для этого .

0 голосов
/ 31 марта 2010

Я собираюсь пойти против директив SO, чтобы не отвечать на ваш собственный вопрос, чтобы ответить на вопрос @ leoben .

Вы должны заметить, что я не использую класс Google GGeoXml, но гораздо лучше со многими другими функциями, на которые я ссылался в своем первоначальном вопросе. Если вы его используете, важно помнить, что массив overlayman.markers не создается полностью до тех пор, пока ваш KML не будет проанализирован, что происходит асинхронно. Вам необходимо добавить прослушиватель для проанализированного события, которое запускается GeoXml после его завершения.

Вы можете увидеть и пример этого на http://www.ecu.edu/campusmaps, который не показывает кнопки управления, пока не сработает проанализированное событие.

...