#javascript #html #google-maps
#javascript #HTML #google-карты
Вопрос:
Я получил карту на сайте. и я пытаюсь выполнить щелчок по маркеру, нажав на ссылку (вне карты) сбоку от карты.
Вот код:
<a id="ctl00_ctl00_cphMain_main_rptTouristique_ctl00_lnk" onclick="javascript:google.maps.event.trigger(markerArray[0],'click') ">Le Vieux Montréal</a>
Примечание: markerArray — это массив всех маркеров на карте.
Примечание: Я работаю с версией 3 API (текущей)
Комментарии:
1. Я нашел группу Google maps API отличной, я бы разместил там: groups.google.com/group/Google-Maps-API?pli=1
2. К сожалению, эта группа говорит о версии api, которая устарела. ( code.google.com/apis/maps/documentation/javascript/v2 /… )
3. Вот что на самом деле работает: вместо создания массива маркеров и InfoWindow я создаю каждый объект отдельно (как переменный marker0 = new google.maps. Маркер();). В функции, которую я вызываю, я использую объект self и всплывающее информационное окно: D.
Ответ №1:
Я уверен, что вам нужно запускать событие click извне, что означает, что вы запускаете функцию, поэтому вы можете вызвать ту же функцию, чтобы показать, что маркер запущен. Например,
function callAfterMarker(){
alert("Market Clicked");
}
google.maps.event.addListener(marker, 'click', function() {
callAfterMarker();
});
<a href="javascript:callAfterMarker();">Address Name</a>";
Кроме того, у вас есть с собой массив маркеров, так что вы можете решить, с какого маркера необходимо вычислить и выполнить вашу функцию или позицию. (т. е.) Если вы хотите передать любую информацию, связанную с маркером, в эту функцию.
Надеюсь, это поможет!
Комментарии:
1. Это почти сработало! Но при вызове infoWindowArray[0].open я получил ошибку «b.get не является функцией». Печаль в моем сердце
Ответ №2:
Я не уверен, что это так, но я считаю, что вам нужно настроить функцию click.
google.maps.event.addListener(marker, 'click', function() {
map.setCenter(marker.position);
});
<a href="javascript:google.maps.event.trigger(markerArray[0],'click')">Address Name</a>";
Комментарии:
1. Это то, что я должен был сделать, чтобы маркер работал должным образом. Но моя проблема в том, что мне нужна внешняя ссылка на карту, чтобы сделать то же самое, что щелкнуть по маркеру.
2. Ссылка «<a href», которая у меня есть, будет находиться за пределами карты и все равно должна вызывать событие click. Прошу прощения, если я неправильно понимаю, что вы пытаетесь сделать, но это должно сработать. Другая вещь, которую вы можете сделать, это указать ссылку на функцию javascript, и у этой функции будет триггер события.