Ошибка Google MAps API V3
Суть проблемы, когда нажимаю на маркер то текст который должен всплывать не всплывает. Открывается просто пустое окно. Сам скрипт вызова прилагаю.
<script type="text/javascript">
function initialize() {
var myLatlng = new google.maps.LatLng(56.323297, 43.062578);
var mapOptions = {
zoom: 15,
center: myLatlng,
scaleControl: true
};
var allMarkers = [],
map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions),
markers = {new_obj},
infoWin = [],
setMarker = function (markers, clear) {
if (clear) {
for (var i in allMarkers) {
allMarkers[i].setMap(null)
}
}
for (var i in infoWin) {
console.log(infoWin[i])
infoWin[i].close();
}
for (var i in markers) {
var marker = null;
if (typeof allMarkers[markers[i].id] == 'object') {
marker = allMarkers[markers[i].id];
allMarkers[i].setMap(map);
} else {
var prepareCords = markers[i].LatLng.split(',');
var icon = (markers[i].icon) ? new google.maps.MarkerImage(markers[i].icon) : null;
console.log(markers[i].icon,icon);
marker = new google.maps.Marker({
id: markers[i].id,
position: new google.maps.LatLng(prepareCords[0], prepareCords[1]),
map: map,
icon: icon,
clickable: true,
title: markers[i].title,
contentString: markers[i].contentString
});
google.maps.event.addDomListener(marker, 'click', function (e) {
for (var j in infoWin) {
infoWin[j].close();
}
infoWin[this.id] = new google.maps.InfoWindow({
content: this.contentString,
maxWidth: 200
});
infoWin[this.id].open(map, this)
});
allMarkers[markers[i].id] = marker;
}
}
}
for (var i in markers) {
setMarker(markers[i], false)
}
var trafficLayer = new google.maps.TrafficLayer();
trafficLayer.setMap(map);
$('*[data-cat]').click(function () {
var id = $(this).data('cat');
if (id == 0) {
for (var i in markers) {
setMarker(markers[i], false)
}
} else {
setMarker(markers[id], true)
}
})
}
google.maps.event.addDomListener(window, 'load', initialize);
</script>
вот так отображает: ![]() |
какая ошибка вылазит? чему равно this.contentString и marker внутри
google.maps.event.addDomListener(marker, 'click', function (e) {
? |
извиняюсь но посмотреть никак не могу((( на меркер навожу хочу сделать проинспектировать но не нажимается. Если быть точнее то вообще не могу маркер проинспектировать:cray:
|
выводи в консоль командой console.log(marker) либо используй breakpoint во вкладке sources
|
console.log(marker)
VM164:2 Uncaught ReferenceError: marker is not definedmessage: "marker is not defined"stack: (...)get stack: function () { [native code] }set stack: function () { [native code] }__proto__: Error P/S вроде правильно вывел |
могу посоветовать только запилить тестовый пример, люба сюда, либо в песочницу, либо на jsfiddle.net
|
к сожалению этот скрипт платный и не хотелось бы его в открытый доступ кидать. Может как вариант ко мне через тимвиевер подключитесь и глянете. соответственно не бесплатно.
|
| Часовой пояс GMT +3, время: 03:02. |