[OpenLayers-Users] OpenLayers.Feature.Vector hover + click event
Ivan Grcic
igrcic at gmail.com
Thu Dec 10 08:41:14 EST 2009
Hi, so your first feature is allready selected when you click on it second time?
On Thu, Dec 10, 2009 at 1:30 PM, _greg_ <gstopar at gmail.com> wrote:
>
> Hi,
> Thanks for your answer.
> Yes. I've tried this and here is what happens:
> 1. I click first on draggable feature => click event occurs => cool
> 2. Click on second not draggable feature => click event occurs => cool
> 3. Click again on first feature => click event is not dispatched.
>
> Any ideas ?
>
>
>
>
> Ivan Grcic-2 wrote:
>>
>> Hi,
>> selectFeature doesnt have click event:
>> http://dev.openlayers.org/releases/OpenLayers-2.8/doc/apidocs/files/OpenLayers/Control/SelectFeature-js.html#OpenLayers.Control.SelectFeature.EVENT_TYPES
>>
>> Defining callback for click should work though
>>
>>
>> OpenLayers.Control.SelectFeature([vector1,vector2],{
>> hover : true,
>> highlightOnly : false,
>> callbacks: {
>> click : function (feat){
>> // do what you want here
>> }
>> }
>> });
>> );
>>
>> Cheers
>>
>> On Thu, Dec 10, 2009 at 12:34 PM, _greg_ <gstopar at gmail.com> wrote:
>>>
>>> Hi all
>>>
>>> Is possible to recive click events and have hover turned on with
>>> OpenLayers.Control.SelectFeature ?
>>> I have two vector layers. One for draggable features and another for not
>>> draggable.
>>> I want to be able to select features from both layers (I'm using OL-2.8).
>>> Feature hover works fine and also featureselected events are ok. But I
>>> do
>>> not get click events.
>>>
>>> My code is :
>>> ...
>>> var vector1 = new OpenLayers.Layer.Vector("NotDraggableMarkers",{
>>> isBaseLayer : false,
>>> rendererOptions : {
>>> yOrdering : true
>>> },
>>> styleMap : this.getMarkerStyleMap()
>>>
>>>
>>> });
>>> var vector2 = new OpenLayers.Layer.Vector("DraggableMarkers",{
>>> isBaseLayer : false,
>>> rendererOptions : {
>>> yOrdering : true
>>> },
>>> styleMap : this.getMarkerStyleMap()
>>>
>>> });
>>>
>>> this.map.addLayers([vector1,vector2]);
>>>
>>>
>>> var dragFeature = new OpenLayers.Control.DragFeature(vector2);
>>> this.map.addControl(dragFeature);
>>> dragFeature.activate();
>>>
>>>
>>> var select = new
>>> OpenLayers.Control.SelectFeature([vector1,vector2],{
>>> hover : true,
>>> highlightOnly : false
>>>
>>> });
>>>
>>> this.map.addControl(select);
>>> select.events.on({
>>> "featurehighlighted" : this.high,
>>> "click" : this.click
>>> });
>>> ...
>>>
>>> Is there any way to do this ? Any ideas ?
>>> Thanks.
>>> --
>>> View this message in context:
>>> http://n2.nabble.com/OpenLayers-Feature-Vector-hover-click-event-tp4144872p4144872.html
>>> Sent from the OpenLayers Users mailing list archive at Nabble.com.
>>> _______________________________________________
>>> Users mailing list
>>> Users at openlayers.org
>>> http://openlayers.org/mailman/listinfo/users
>>>
>>
>>
>>
>> --
>> Ivan Grcic
>> _______________________________________________
>> Users mailing list
>> Users at openlayers.org
>> http://openlayers.org/mailman/listinfo/users
>>
>>
>
> --
> View this message in context: http://n2.nabble.com/OpenLayers-Feature-Vector-hover-click-event-tp4144872p4145073.html
> Sent from the OpenLayers Users mailing list archive at Nabble.com.
> _______________________________________________
> Users mailing list
> Users at openlayers.org
> http://openlayers.org/mailman/listinfo/users
>
--
Ivan Grcic
More information about the Users
mailing list