Открыть / разместить ВСЕ InfoWindows на Google Map (любая версия API)? - PullRequest
0 голосов
/ 11 января 2012

В свободное время я помогаю соседской группе, которая участвует в посадке деревьев несколько раз в год. Я создал и распечатал геокодированные карты Google наших мест посадки, которые очень полезны для различных команд, делающих посадки.

Одна вещь, которую я не могу сделать, это заставить карту показывать, что ВСЕ окна открыты одновременно. Я хотел бы иметь возможность показывать виды деревьев на месте посадки, а не заставлять людей смотреть на этикетку маркера и находить это в отдельном списке. На большом мониторе я могу увеличить достаточно, чтобы перекрывающиеся информационные окна не были (огромной) проблемой. Я не видел никаких признаков того, что в Google есть какой-либо код для автоматического упорядочивания, но если есть, то еще лучше.

Все сообщения, которые я могу найти, связаны с тем, что информационные окна не закрываются должным образом при нажатии другой, или что содержимое не обновляется должным образом для каждого маркера, но никто, похоже, не спрашивал об этом типе сценария использования. *

Буду очень признателен за любые идеи или указатели в правильном направлении.

1 Ответ

1 голос
/ 11 января 2012

Если вы используете Maps API V3, вы можете сделать это легко.

Обычно, когда вы хотите, чтобы информационное окно открывалось по клику, вы создаете событие для обработки этого:

google.maps.event.addListener(marker, 'click', function() {
  infowindow.open(map,marker);
});

в этом случае вы также хотите просто открыть информационное окно:

infowindow.open(map,marker);
google.maps.event.addListener(marker, 'click', function() {
  infowindow.open(map,marker);
});

Делайте это после создания каждого информационного окна и маркера.

Для удобства чтения вы можете вместо этого использовать метку на маркере, например, используя служебную библиотеку MarkerWithLabel: http://google -maps-utility-library-v3.googlecode.com / СВН / теги / markerwithlabel / 1.1.5 /

...