Javascript передает событие клика в Google Maps через перекрывающийся div? - PullRequest
1 голос
/ 02 мая 2011

Скажем, у меня есть встроенная карта Google.Если я поместил div одинакового размера, перекрывающий карту Google с той же высотой и шириной ... могу ли я сделать так, чтобы событие onclick элемента div передавало событие click на карту так, чтобы я все еще мог перемещаться иувеличить масштаб карты, как если бы там не было перекрывающегося слоя div?

Ответы [ 3 ]

1 голос
/ 02 мая 2011

Почему вы перекрываете это с div?

Если вы пытаетесь сделать это так, чтобы вы тоже могли захватывать клики пользователей, в этом нет необходимости, используйте google maps api

var map = new GMap2(document.getElementById("map"));
map.setCenter(new GLatLng(37.4419, -122.1419), 13);
GEvent.addListener(map, "click", function() {
  alert("You clicked the map.");
});

Пример взят из: http://code.google.com/intl/en-US/apis/maps/documentation/javascript/v2/events.html

0 голосов
/ 22 октября 2011

Да, можно делать то, что вы просите. Посмотрите на этот простой пример, который я создал, чтобы продемонстрировать: http://68.178.240.17/eventExample/

Концептуально события никогда ничего не "проходят", пузырь событий. Так что, если ваш DIV является дочерним для цели, события будут пузыриться до цели. (Не говорите о моделях событий, пожалуйста. Это работает во всех браузерах, включая IE.)

То, как вы реализуете это с помощью карт Google, выглядит примерно так:

<DIV my GoogleMap container>
  <DIV my overlay positioned absolutely on top of the parent google map container></DIV>
</DIV>
0 голосов
/ 02 мая 2011

Вы можете попытаться перехватить событие на элементе div, а затем вызвать его (изменить цель) на карте с помощью jQuery.trigger

$(selector).trigger( event );

Триггер Jquery

Надеюсь, это поможет

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