Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am doing a map which refresh dinamically all markers when they get modified. I want to add popups to show some info.

I create popups this way:

        var feature = new OpenLayers.Feature(markers, location); //location = lonlat
        feature.closeBox = true;
        feature.popupClass = OpenLayers.Class(OpenLayers.Popup.FramedCloud, {
        'autoSize': true
    });; = "info"; = (false) ? "auto" : "hidden";        
            var markerClick = function (evt) {
            if (this.popup == null) {
                this.popup = this.createPopup(this.closeBox);
            } else {
            currentPopup = this.popup;
        };"mousedown", feature, markerClick);

Now, I have the problem about what to do if one of my markers update its info. How can I destroy the popup? (I will create other one) or how can I modifiy it? Can I access them using lonlat?

Sometimes, I want to delete all of them, is there a way to do that? like deleting a layer or something?

share|improve this question

for getting one popup info, you should do this:

map.popups[0]; // the firstly added popup

for removing one popup:

map.removePopup(map.popups[0]); // it will destroy firstly added popup
map.popups[0].destroy() // the same thing

for removing all popup from maps:

var pops = map.popups;
for(var a = 0; a < pops.length; a++){

for hiding and showing popups:


for finding popups from lonlat, you can get info for looping it in for loop and if clause:


and you can get the last popup with following code:


this all information is some part of Openlayers popup element...there are lots of thing you can do with popups...

i hope it helps you

share|improve this answer

Did you take a look at the OpenLayers.Map documentation? All popups are accessible from the "map" variable.

share|improve this answer
it would be better if you could explain the answer rather than just providing a link – Sam007 Jun 5 '12 at 20:10

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.