Мне нужно отобразить на карте несколько маркеров, каждый со своим infowindow. Я создал отдельные маркеры без проблем, , но не знаю, как создавать инфо-окна для каждого.Показать несколько маркеров на карте со своими информационными окнами
Я создаю карту, используя API V3 на веб-сайте ASP, с созданием маркеров из набора записей БД. Маркеры созданы перекручивание через RS и определение маркеров() с соответствующими переменными:
var myLatlng = new google.maps.LatLng(lat,long);
var marker = new google.maps.Marker({
map: map,
position: myLatlng,
title: 'locationname',
icon: 'http://google-maps-icons.googlecode.com/files/park.png'
});
Это создает все соответствующие маркера в их правильных местах.
Что мне нужно сделать сейчас, и я не уверен, как добиться этого, дайте каждому из них их собственный уникальный инфоиндуст, который я могу использовать для отображения информации и ссылок, относящихся к этому маркеру.
Источник
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>
<script language="javascript">
$(document).ready(function() {
//Google Maps
var myOptions = {
zoom: 5,
center: new google.maps.LatLng(-26.66, 122.25),
mapTypeControl: false,
mapTypeId: google.maps.MapTypeId.ROADMAP,
navigationControl: true,
navigationControlOptions: {
style: google.maps.NavigationControlStyle.SMALL
}
}
var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
<!-- While locations_haslatlong not BOF.EOF -->
<% While ((Repeat1__numRows <> 0) AND (NOT locations_haslatlong.EOF)) %>
var myLatlng = new google.maps.LatLng(<%=(locations_haslatlong.Fields.Item("llat").Value)%>,<%=(locations_haslatlong.Fields.Item("llong").Value)%>);
var marker = new google.maps.Marker({
map: map,
position: myLatlng,
title: '<%=(locations_haslatlong.Fields.Item("ldescription").Value)%>',
icon: 'http://google-maps-icons.googlecode.com/files/park.png',
clickable: true,
});
<%
Repeat1__index=Repeat1__index+1
Repeat1__numRows=Repeat1__numRows-1
locations_haslatlong.MoveNext()
Wend
%>
<!-- End While locations_haslatlong not BOF.EOF -->
google.maps.event.addListener(marker, 'click', function() {
infowindow.open(map,marker);
});
google.maps.event.addListener(marker, 'dblclick', function() {
map.setZoom(14);
});
});
Спасибо, это поставило меня на пути к просветлению (и более глубокое понимание использования Массивы тоже). Это похоже на то, что некоторые из JS-выходных данных, которые я получаю, представляют собой небольшую ошибку, из-за которой карта не загружается. Firebug докладывает следующая проблема: отсутствующий} после списка свойств, линия 85 Я швырнул копию исходного кода, полученного на: http://sites.google.com/site/forestproductswa/ только разница в этой строке заключается в том, что результат поля, используемого для заполнения infoWindowContent в этой строке, имеет пробел в нем. В противном случае все выглядит идеально и сбалансировано. – thewinchester
@thewinchester, извинения, у меня была опечатка в части генерации массива. (Когда мы заполняем 'title' и' infoWindowContent', мы ожидаем строки и поэтому должны помещать кавычки вокруг данных. Я оставил их из своего первоначального ответа.) Я отредактировал свой ответ. –
Спасибо, наконец, понял. – thewinchester