ДЕМО: http://so.devilmaycode.it/refresh-reload-maps-google-maps-api-v2/
Все, что вам нужно, находится внутри источника, посмотрите и дайте мне знать.
В основном демонстрационная версия использует библиотеку markermanager.js
, как и вы сейчас, она объясняет, как ссылаться на на новые добавленные маркеры и как insert
и remove
их без обновления текущая карта / страница;
Процесс прост: каждый раз, когда marker
добавляется на карту с помощью addMarkers
, он создает marker.object
, свойство, которое мы ищем, это marker.no
в форме marker#
, где #
- инкрементное число, поэтому может быть любой цифрой.
Теперь настоящая хитрость заключается в создании массива global
, в котором мы сохраняем все созданные маркеры для легкого доступа.
Таким образом, мы можем достичь и удалить каждый маркер, используя функцию removeMarker
следующим образом: removeMarker(global_marker_array[marker_id]);
, где marker_id
- это marker.no
;
я думаю, что этот подход действительно хорош, потому что вам не нужно знать lat и long для получения маркеров во второй раз.