Как закрыть все открытые окна InfoWindow с помощью jquery-ui-map (плагин Google Map v3 для jQuery)
У пользователя есть загруженные маркеры в зависимости от того, где они выбирают свое местоположение. Маркеры очищаются при выборе нового местоположения. Если у меня открылось информационное окно, когда я очищаю маркеры, оно остается открытым, даже если маркер исчезает. Я хочу, чтобы любое открытое InfoWindow закрывалось при обновлении данных.
Мои детали реализации:
Я использую jquery-ui-map для улучшения своей реализации Google Maps с помощью jQuery.
Я прикрепляю событие щелчка при создании маркеров со следующим кодом (к вашему сведению: я вынул все конкретные детали и заменил их на общие).
$('#map-canvas').gmap('addMarker', {
'position' : new google.maps.LatLng(latitude, longitude),
'title' : myTitle,
'icon' : myImage,
'shadow' : myShadowImage
}).click(function() {
$('#map-canvas').gmap('openInfoWindow', {
'content' : displayContent(myObject)
}, this);
});
Опция openInfoWindow
ничего не возвращает, поэтому сохранение объекта InfoWindow в массиве для последующего его закрытия не выглядит приемлемым вариантом.
Кто-нибудь знает, как добиться этого с помощью библиотеки jquery-ui-map? Я не вижу closeInfoWindow в списке документации API.
1 ответ
jquery-ui-map v.beta
var theInfoWindowObject = $('#map_canvas').gmap('get', 'iw');
theInfoWindowObject.close();
JQuery-UI-карта V RC 1
$('#map_canvas').gmap('closeInfoWindow');