[OpenLayers-Users] Displaying a popup on mouse over AND a
different popup on click.
Adrian Popa
adrian_gh.popa at romtelecom.ro
Mon Aug 3 08:19:44 EDT 2009
Thank you for your suggestion - I will try it and let you know how it works!
Regards,
Adrian
Alexandre Dube wrote:
> Hi Adrian,
>
> Take a look at this example (1). You can use 2 SelectFeature
> controls for what you need, one with hover:true and
> highlightOnly:true, the other with hover false. The first one won't
> actually select the feature and you can register 3 kinds of
> "highlight" events (see the source) to display your small div/popup.
>
> Hope this helps,
>
> Alexandre
>
> (1) http://openlayers.org/dev/examples/highlight-feature.html
>
> Adrian Popa wrote:
>> Hello everyone,
>>
>> This is sort of a repeat message of "Re: [OpenLayers-Users]
>> Labels/Tooltips on mouse over a Vector layer" - but with a slightly
>> different idea.
>>
>> Problem: I want to display a small div/popup with the marker's name
>> when the user hovers his mouse over the location, and I want to
>> display a bigger popup when the user actually clicks on the location.
>>
>> Current status:
>> * I can use {hover: true} to register
>> featureselected/featureunselected when I hover over a marker instead
>> on when I click on the maker.
>> * I haven't found any events that could differentiate between hover
>> and click
>>
>> I'm thinking I could register my select control with hover: true and
>> allow featureselected to execute the same function for both when I
>> click on the makrer as well as when I hover over the marker. I would
>> like to know if there's any way to find out in the event inside the
>> function if the user clicked or not his mouse. Depending on this, I
>> would show one popup or the other.
>>
>> Something like:
>>
>> select = new OpenLayers.Control.SelectFeature(markers,
>> {clickout:true, hover:true});
>> markers.events.on({ "featureselected": onMarkerSelect,
>> "featureunselected": onMarkerUnselect, "visibilitychanged":
>> onMarkerToggle });
>> map.addControl(select);
>> select.activate();
>>
>> function onMarkerSelect(event){
>> var feature = event.feature;
>> //find out if the user clicked or not
>> var clicked = event.*findAWayToSeeIfTheUserClicked()*;
>> if(clicked){
>> //show larger popup
>> }
>> else{
>> //show smaller popup
>> }
>> }
>>
>> Suggestions are welcome.
>>
>> Thanks,
>> Adrian
>> ------------------------------------------------------------------------
>>
>> _______________________________________________
>> Users mailing list
>> Users at openlayers.org
>> http://openlayers.org/mailman/listinfo/users
>>
>
>
More information about the Users
mailing list