Виджет в информационном окне с несколькими маркерами
Я пытаюсь создать карту с множеством маркеров и информационных окон, используя API Карт Google. Я могу получить карту для отображения большого количества маркеров и информационных окон с указанием местоположений в сценарии или загрузкой их из файла.
Что я хочу сделать, это поставить этот код:
<script type="text/javascript" src="http://www.tidetimes.org.uk/aberdaron-tide-times.js"></script>
в информационное окно, так что маркер будет в том месте, и при нажатии информационное окно показывает время прилива.
Я не могу найти способ заставить это работать в информационном окне. Кто-нибудь может помочь? Спасибо
2 ответа
Извините, я не совсем понимаю, что вы говорите. Что вы имеете в виду именно под этим "Что я хочу сделать, это поместить этот код в информационное окно, чтобы маркер находился в том месте, а при щелчке информационное окно показывает время прилива".?
Прежде всего, вам не нужен код внутри информационного окна, чтобы указать местоположение маркера. Это один из стандартных атрибутов маркеров.
Во-вторых, я почти уверен, что вы не можете иметь событие (код) внутри своего информационного окна. Что вы можете сделать, это когда пользователь нажимает на маркер, карта будет увеличиваться или уменьшаться. И вы можете иметь другое событие на этом маркере позже.
Возможно, это поможет вашему ответу (взято из документации Google Maps API)
"Содержимое InfoWindow может содержать либо строку текста, фрагмент HTML, либо сам элемент DOM".
Вам нужно добавить HTML в информационное окно..
var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
var contentString = '<div id="content">'+
'<div id="siteNotice">'+
'</div>'+
'<h2 id="firstHeading" class="firstHeading">Uluru</h2>'+
'<div id="bodyContent">'+
'<p><b>Uluru</b>, also referred to as <b>Ayers Rock</b>, is a large ' +
'sandstone rock formation in the southern part of the '+
'Northern Territory, central Australia. It lies 335 km (208 mi) '+
'south west of the nearest large town, Alice Springs; 450 km '+
'(280 mi) by road. Kata Tjuta and Uluru are the two major '+
'features of the Uluru - Kata Tjuta National Park. Uluru is '+
'sacred to the Pitjantjatjara and Yankunytjatjara, the '+
'Aboriginal people of the area. It has many springs, waterholes, '+
'rock caves and ancient paintings. Uluru is listed as a World '+
'Heritage Site.</p>'+
'<p>Attribution: Uluru, <a href="http://en.wikipedia.org/w/index.php?title=Uluru&oldid=297882194">'+
'http://en.wikipedia.org/w/index.php?title=Uluru</a> (last visited June 22, 2009).</p>'+
'</div>'+
'</div>';
var infowindow = new google.maps.InfoWindow({
content: contentString
});
редактировать
После дальнейшей проверки вашего кода и вашего сайта, я полагаю, вы спрашиваете, как ввести время и даты в одном файле.
Мое предложение состоит в том, чтобы использовать возвращаемый объект JSON из кода на стороне сервера, перебирать объект json и использовать шаблон для всплывающего окна.
Если вам интересно, вы можете сослаться на то, что мы делаем аналогично, на http://demo.mapitusa.com/ вы можете легко просмотреть исходный код и найти необходимые js-файлы и увидеть рабочий пример.