2010-04-28 2 views
119

Как вызвать onclick событие маркера на Картах Google вне карты?Как запустить событие onclick маркера на Google Maps V3?

Я использую версия 3 API. Я видел много учебников для версии 2, но не могу найти это для версии 3.

У меня есть глобальный массив (с маркерами ), содержащий все маркеры карты (google.maps.Marker). Теперь я хочу сделать что-то вроде:

markers[i].click(); //I know it's not working, but you get the idea... 

//Next line seems to be the way in v2, but what's the equivalent in v3? 
GEvent.trigger(markers[i], 'click'); 

Спасибо за вашу помощь, и если вам нужна дополнительная информация, дайте мне знать!

ответ

306

Я нашел решение! Благодаря Firebug;)

//"markers" is an array that I declared which contains all the marker of the map 
//"i" is the index of the marker in the array that I want to trigger the OnClick event 

//V2 version is: 
GEvent.trigger(markers[i], 'click'); 

//V3 version is: 
google.maps.event.trigger(markers[i], 'click'); 
+0

мыши стреляет, но в моем случае информационные окна не корректируются на карте, они немного сокращаются. –

+3

@Saboor Awan Попробуйте задать конкретный вопрос об этом, поскольку комментарии - это не лучший способ разобраться в этом. – AlexV

+0

Это все еще правильно. Помните, что jQuery также имеет функцию 'trigger()'. В моем случае intellisense выскакивал, заставляя меня переносить аргументы. – Pete

3

Для будущих Googlers, Если вы получите ошибку, подобную ниже после запуска нажмите на полигоне

"Uncaught TypeError: Cannot read property 'vertex' of undefined" 

попробуйте этот код

google.maps.event.trigger(polygon, "click", {}); 
Смежные вопросы