Google Maps & JQuery InfoWindow Замена - PullRequest
1 голос
/ 08 февраля 2010

Итак, я переписываю свое первое приложение для карт Google и смотрю, как я создаю информационные окна по щелчку маркера, и, кажется, очень неэффективно добавлять слушателя для каждого из них. Ранее я использовал GInfoWindow и EBubble (http://econym.org.uk/gmap/ebubble.htm).

Я думал, что мог бы использовать jQuery для отображения div с динамическими данными, если бы у меня был крюк для каждого маркера, чтобы показать окно и соответствующую информацию о маркере (взято из JSON). Я вижу, что у каждого маркера есть уникальный идентификатор (например, mtgt_unnamed_2822), но я не уверен, как это предсказать.

Кто-нибудь пробовал это раньше или знает, как это сделать?

Спасибо Denis

1 Ответ

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

Я не знаю jQuery, но Javascript позволяет вам добавлять свои собственные пользовательские свойства к любому объекту. Таким образом, вы можете написать что-то вроде этого:

  var marker = new GMarker(...);  
  marker.ID = "mtgt_unnamed_2822";

или

function createMarker(point,newid) {
  var marker = new GMarker(point);
  marker.ID = newid;
  ...
}

Будьте осторожны, чтобы не использовать "marker.id", потому что API мог бы использовать "id" в качестве скрытого внутреннего имени для существующего свойства в некоторых будущих выпусках. На самом деле избегайте имен свойств, которые начинаются со строчной буквы.

После того, как вы прикрепили свойство .ID к маркеру, вы можете читать информацию из marker.ID любой ссылки на маркер, когда вам это нужно для вызова jQuery.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...