ThinkGeo.com    |     Documentation    |     Premium Support

Question about Popups

Hello again,


I want to have Hover over popups at a specific location but I do not want the marker Icon.  I tried using markers and a simplemarkerlayer (see my previous post) which works for giving me popup images but the Marker icon overlays my symbology from my custom feature layer.


I followed the advice fron Khalil and used Popups directly on the Map.  I created a Pointshape, made a popup, added it to the map but unlike a Marker, the Popup does not popup on Hover.  For a maker popup, I set the Popup to IsVisible = false which caused it to only display when I hovered the mouse over the marker.  However, when I create a CustomPopup and add it to the Map directly, I can not achieve the same results.



//Add the popups
        PointShape F1pos = new PointShape(-118.19, 34.64);
        CustomPopup F1pop = new CustomPopup("F1pop", F1pos, "<img src='Pipelines.jpg' />", 300, 200, false, false, 2);
        //F1pop.IsVisible = false;
        Map1.Popups.Add(F1pop);


What I want to do..... I want to have a custom feature layer with symbols at specific longitudes and latitudes.  I use the properties of the feature layer to control symbology for alarms.


I also what a "Hover Over" popup to be active at the same longitude and latitude as the symbols in the feature layer.  So far I am not seeing anyway to do this.  Is this possible?


Thank you, Leon 


 


 


 



Leon,



If you want the hover popup and its content html except the marker icon, and I suggest you can still use the SimpleMarkerOverlay and set the opacity as 0. I have tried that and it works well. Please refer to the code below:




        .filterStyle
        {
            -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
        }

        var OnMapCreated = function(map) {
            var markerLayer = map.getLayer("MarkerOverlay");
            for (var i = 0, l = markerLayer.markers.length; i < l; i++) {
                var marker = markerLayer.markers[i];
                if (marker != null && marker.icon != null) {
                    marker.icon.imageDiv.style.filter = 'alpha(opacity=0)';
                    marker.icon.imageDiv.firstChild.className = "filterStyle";
                    marker.icon.imageDiv.style.opacity = 0.0;
                }
            }
        }


The filterStyle is the filter style for IE8 and OnMapCreated function is used to iterate the markers collection and set its opacity.

You can get more detail information in the attached codes and please refer to it.

Thanks,


Khalil



MarkersWithOpacity.zip (2.52 KB)

thanks Khalil!   
  
 Exactly what I needed.

Leon, 
  
 Thanks for your feedback.  
 If you still have any questions about it please feel free to let us know. 
  
 Thanks, 
  
 Khalil