[OpenLayers-Users] Draggable Markers on Openlayers.

KartoPete psingler at gmx.de
Thu Jan 8 10:33:11 EST 2009




BenJamin2007 wrote:
> 
> Hi, somebody gives me a hand, pls
> 
> 
> BenJamin2007 wrote:
>> 
>> Hi guys,
>> 
>> I downloaded the draggable Marker feature from 
>> 
>> http://trac.openlayers.org/browser/sandbox/tschaub/feature/lib/OpenLayers/Control/DragMarker.js?rev=3459
>> 
>> and I make it work.
>> 
>> This feature will be released on version 2.6 I guess. But I would like to
>> put it forward because I have to use it for my current work.
>> 
>> Basically, there are 2 fundamental 'classes':
>> 
>> OpenLayers.Control.DragMarker
>> OpenLayers.Handler.Marker
>> 
>> This is how we add drag control to the markers.::::
>> 
>> 
>> map = new OpenLayers.Map('map');
>> markermanager = new OpenLayers.Layer.Markers(" marker layer ");
>> var DragControl=new OpenLayers.Control.DragMarker(markermanager);
>> map.addControl(DragControl);
>> DragControl.activate();
>> 
>> 
>> Easy, Simple, Good!
>> 
>> I also had this code in my javascript:
>> 
>> a_marker=new OpenLayers.Marker(new OpenLayers.LonLat(-72,42));
>> a_marker.events.register("mouseup", null, function(evt){
>>      // Do something.
>>     333                           // option 2: intend to creat an error
>> here.
>> }
>> 
>> But here is my Problem: If I add the customer event handler....        
>> When I drag the a_marker, I can drag it.. but after I release my left
>> button, the a_marker won't go release.. The marker keep sticking to the
>> mouse.  Seems that the 'mouseup' event has not been passed to the
>> DragHandler.....
>> 
>> The ONLY way I can solve this problem is to create an error at the end of
>> the event function, like this:
>> 
>> a_marker.events.register("mouseup", null, function(evt){
>>      // Do something.
>>     333     // intend to creat an error here.
>> }
>> 
>> 
>> 
>> 
>> Here are the ways I tried, but failed!!!!
>> 
>> a_marker.events.register("mouseup", a_marker, function(evt){
>>        // Do something.
>>       map.Event.Stop(evt);                      
>>  }
>> 
>> a_marker.events.register("mouseup", map, function(evt){
>>        // Do something.
>>       map.Event.Stop(evt); 
>> }
>> 
>> a_marker.events.register("mouseup", null, function(evt){
>>        // Do something.
>>       map.Event.Stop(evt);                       
>> }
>> 
>> 
>> 
>> SO, Some body Help me. 
>> 
>> Thank a lot!!!
>> 
>> 
> 
> 

I#ve got the same problem. Did you fix yours?
thx,
Pete
-- 
View this message in context: http://n2.nabble.com/Draggable-Markers-on-Openlayers.-tp1825955p2128434.html
Sent from the OpenLayers Users mailing list archive at Nabble.com.




More information about the Users mailing list