[OpenLayers-Users] Change marker-icon on click

Bytechanger Bytechanger at gmx.de
Thu Oct 22 05:28:51 EDT 2009


Hi,

I want to change marker icon on click!

But when I change the <<marker.icon>> value on an displayed marker,
the new icon freezes and the old marker image with clickpositionis
displayed far away!

Please, I need help! I only want to change marker.icon on an displayed
marker!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!



Greetings

Byte


########### snip ##################################
function addMarker(layer, lon2, lat2, popupContentHTML, iconId, ZielProj) {

[...]

    var feature = new OpenLayers.Feature(layer, ll);
    feature.closeBox = false;

    feature.popupClass = OpenLayers.Class(OpenLayers.Popup.FramedCloud,
{autoSize: false });
    feature.data.popupContentHTML = popupContentHTML;
    feature.data.overflow = "hidden";
    feature.data.icon = makeIcon(iconId);

// my one -------------------------------------
     feature.data.orgIcon=makeIcon(iconId);
     feature.data.ClickIcon=makeIcon(6);
     feature.data.OverIcon=makeIcon(6);
//----------------------------------------------

     var marker = feature.createMarker();

    var markerClick = function(evt) {

        if (this.popup==null) {
                                   this.popup =
this.createPopup(this.closeBox);
                               // ========== here comes the fault !!!!
============
                                    this.marker.icon=this.data.ClickIcon;
                               //
==========================================
                                   this.layer.redraw();
            map.addPopup(this.popup);
            this.popup.show();
        }
[...]

            // ###################################

                        OpenLayers.Event.stop(evt);

    };

 
    marker.events.register("mousedown", feature, markerClick);
    layer.addMarker(marker);


}


###############################################



More information about the Users mailing list