@Tvoi_Vaska

Как найти маркер на Google maps по id и активировать его InfoWindow?

На Google Maps нанесены маркеры, которые были импортированы из json файла. Есть кнопки, кликая по которым происходит перемещение окна и открытия infowindow маркера, определенного по id, который совпадает с id кнопки с класса "selector".

<button class="selector" id="1">Маркер 1</button>
<button class="selector" id="2">Маркер 2</button>
<button class="selector" id="3">Маркер 3</button><br />
 <script>
 var map;
 var markers=[];
function initMap() {
self = this;
  map = new google.maps.Map(document.getElementById('map'), {
    zoom: 2,
    center: new google.maps.LatLng(2.8,-187.3),
    mapTypeId: 'terrain'
  });
  var script = document.createElement('script');
  script.src = '';
  document.getElementsByTagName('head')[0].appendChild(script);
  
   var infowindow = new google.maps.InfoWindow();
  
  window.eqfeed_callback = function(results) {
  for (var i = 0; i < results.features.length; i++) {
	var place = results.features[i].properties.place;
    var coords = results.features[i].geometry.coordinates;
	var id = results.features[i].properties.ids;
    var latLng = new google.maps.LatLng(coords[1],coords[0]);
    var marker = new google.maps.Marker({
      position: latLng,
      map: map,
      title: 'Нажмите чтобы приблизить',
	  description : place,
	  id : id,
    });
	markers[i] = {
		position: latLng,
		description: place,
		id: id,
	}
	
	google.maps.event.addListener(marker, 'click', function() {
	map.setZoom(8);
    map.setCenter(this.getPosition());
	infowindow.setContent('<div><strong>' + this.description +'</strong><br></div>');
    infowindow.open(map, this);
});
  }
}


console.log(markers[1[1]]);
}
    </script>


Получаю ошибку: Uncaught ReferenceError: markers is not defined
Помогите победить ошибку.
  • Вопрос задан
  • 50 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы