Помогите пожалуйста. Уже совсем замучился. Уже пол дня в пустую потратил.
При нажатии на маркер выдаёт ошибку
Uncaught TypeError: Cannot read property 'content' of undefined
Вот пример живой код
https://jsfiddle.net/9c9bovnx/3/var map = new google.maps.Map(document.getElementById('map'),{
center: {
lat: 50.42497789999999,
lng: 30.459857599999964
},
zoom: 10
});
var myBubles = {
"markers" : [
{
"id" : 1,
"title" : "title",
"content" : "<div id=\"content\"><div id=\"siteNotice\"></div><h1 id=\"firstHeading\" class=\"firstHeading\">Заголовок</h1><div id=\"bodyContent\"><p><i class=\"fa fa-phone\" aria-hidden=\"true\"></i> Первая строка</p><p><i class=\"fa fa-phone\" aria-hidden=\"true\"></i> Вторая строка</p><p><i class=\"fa fa-phone\" aria-hidden=\"true\"></i> Третья строка</p></div></div>",
"lat" : 50.42497789999999,
"lng" : 30.459857599999964,
"inner_title" : "Заголовок маркера"
},{
"id" : 2,
"title" : "title",
"content" : "<div id=\"content\"><div id=\"siteNotice\"></div><h1 id=\"firstHeading\" class=\"firstHeading\">Заголовок 2</h1><div id=\"bodyContent\"><p><i class=\"fa fa-phone\" aria-hidden=\"true\"></i> Первая строка 2</p><p><i class=\"fa fa-phone\" aria-hidden=\"true\"></i> Вторая строка 2</p><p><i class=\"fa fa-phone\" aria-hidden=\"true\"></i> Третья строка 2</p></div></div>",
"lat" : 50.508021165218466,
"lng" : 30.60405315664059,
"inner_title" : "Заголовок маркера 2"
}
]
};
console.log(myBubles.markers[0].content);
for(var i = 0; i < myBubles.markers.length; i++){
var markers = [];
markers[i] = new google.maps.Marker({
position: { lat: myBubles.markers[i].lat, lng: myBubles.markers[i].lng },
map: map,
title: myBubles.markers[i].inner_title
});
markers[i].addListener('click', function() {
new google.maps.InfoWindow({ content: myBubles.markers[i].content }).open(map, markers[i]);
});
}
За качество кода не ругайте - с JS работаю очень редко.