Прикрепление тегов Class или id к Marker Link

У меня есть интерактивный маркер, к которому я хочу прикрепить тег «класс» или «идентификатор», почти так же, как в <a href='' id='???'>.

<div id="map" style="width: 500px; height: 400px;"></div>
<script type="text/javascript">
var map = new google.maps.Map(document.getElementById('map'), {
  zoom: 2,
  center: new google.maps.LatLng(35.55, -25.75),
  mapTypeId: google.maps.MapTypeId.ROADMAP
});

var marker = new google.maps.Marker({
  position: map.getCenter(),
  url: '#popup1',
  map: map
});

google.maps.event.addListener(marker, 'click', function() {
  window.location.hash = marker.url;
});


For those also wanting the answer: I found SimpleModal.

http://www.ericmmartin.com/projects/simplemodal/

Затем я использовал $("#element-id").modal(); в событии щелчка маркера, которое запускает внешнее окно Jquery.

Спасибо за ваше время, Лоик!


person pufAmuf    schedule 08.07.2011    source источник


Ответы (1)


Возможно, вы сможете получить узел dom, следуя приведенным здесь предложениям: Получить элемент DOM маркера в Google Maps API 3

Тем не менее, доступ к узлу dom (для установки идентификатора и класса css), похоже, не является способом, которым команда инженеров Google Map разработала маркер. На самом деле маркеру присваивается идентификатор API карты Google, я бы не стал вмешиваться в него, так как это может нарушить функциональность.

Если вы хотите изменить внешний вид маркера, вы можете использовать значки вместо маркеров. Иконки — это маркеры с произвольным изображением. Дополнительную информацию можно получить здесь: http://code.google.com/apis/maps/documentation/javascript/overlays.html#Icons

И если вы хотите получить сам маркер, вы можете сохранить его в массиве и получить к нему доступ позже в своем коде.

person Loïc    schedule 08.07.2011
comment
(извините, я не знал, что ENTER означает отправку :)) Я хочу использовать идентификатор, чтобы открыть всплывающее окно JQUERY в качестве альтернативы информационным окнам Google. Всплывающее окно откроется только в том случае, если я установлю определенный идентификатор. Есть ли обходной путь для этого? Может быть, использовать внешний маркер, не установленный API Google? Спасибо - person pufAmuf; 08.07.2011
comment
Я не знал об этом модальном плагине для jquery. Это кажется весьма полезным, спасибо, что поделились! - person Loïc; 08.07.2011