Google Map V3 – позволяет одновременно отображать только одну инфобокса

Я infoWindow от infoWindow к infoBox для более infoBox инфо-окон.

У меня есть несколько маркеров на карте. То, что я хочу сделать, – это когда один infoBox уже открыт, если пользователь нажимает на другие маркеры, текущий infoBox будет закрываться автоматически, и новый infoBox откроется, так что пользователю не нужно закрывать текущий infoBox , и всегда будет infoBox отображается только одна infoBox .

Вот демо и код моего текущего решения http://jsfiddle.net/neo3000ultra/9jhAy/

Заранее спасибо!

Измените эту часть:

  google.maps.event.addListener(marker, "click", function (e) { ib.open(map, this); }); var ib = new InfoBox(myOptions); google.maps.event.addListener(marker2, "click", function (e) { ib2.open(map, this); }); var ib2 = new InfoBox(myOptions2); 

к следующему:

  var ib = new InfoBox(); google.maps.event.addListener(marker, "click", function (e) { ib.close(); ib.setOptions(myOptions) ib.open(map, this); }); google.maps.event.addListener(marker2, "click", function (e) { ib.close(); ib.setOptions(myOptions2) ib.open(map, this); }); 

Работает для меня, также в IE9: http://jsfiddle.net/doktormolle/9jhAy/1/

Обратите внимание на использование ib.close() перед открытием infoBox, кажется, это трюк.

Обычное предложение для одного инфоиндуста состоит только в создании одного, а затем повторное использование его для всех маркеров (изменение его содержимого).

Вот пример, который делает это с API-интерфейсом v3 (я думаю, что это «поведение v2 infowindow», потому что API v2 допускал только одно инфо-окно) http://www.geocodezip.com/v3_markers_normal_colored_infowindows.html

Вот еще один пример, основанный на учебнике Mike Williams v2: http://www.geocodezip.com/v3_MW_example_map1.html

и ваш пример изменен: http://jsfiddle.net/uGnQb/6/

  • Как отключить масштабирование колесика мыши с помощью API Карт Google
  • Как нарисовать интерактивную полилинию на маршруте google maps v2 android
  • Google Maps v3: проверьте, существует ли точка в полигоне
  • API Google Map - удаление маркеров
  • Добавить схему «Область поиска» на результат Google Maps
  • Данные метаданных об ошибках Google Play Services v13 в AndroidManifest
  • Не удается разрешить метод getMap ()
  • Получить текущее местоположение на карте Google
  • Как использовать MapView в android с помощью google map V2?
  • google.maps.Geocoder.geocode () Часто задаваемые имена геометрии.location lat / lng изменяются
  • Контроль масштабирования и уличный обзор не отображаются на моей карте Google?
  • Давайте будем гением компьютера.