2013-04-30 5 views

Antwort

13

prüfen diese Demo: http://jsfiddle.net/3NtS9/

Sie können es tun, indem er gegen die Vorveranstaltung auf jeden atomaren Drag-Operation koordinieren zu überprüfen.

var prevX = -1; 

$('div').draggable({ 
    drag: function(e) { 
     //console.log(e.pageX); 
     if(prevX == -1) { 
      prevX = e.pageX;  
      return false; 
     } 
     // dragged left 
     if(prevX > e.pageX) { 
      console.log('dragged left'); 
     } 
     else if(prevX < e.pageX) { // dragged right 
      console.log('dragged right'); 
     } 
     prevX = e.pageX; 
    } 
}); 
+0

Das war schnell! +1 – basarat

0

Ich würde Sie empfehlen, die start und stop Ereignisse zu behandeln und die Position Delta in Stoppereignis bestimmen zu erhalten, ob es verschoben wurde nach links oder rechts:

http://jqueryui.com/draggable/#events

4

Hier ist ein einfacher Weg, zu tun es:

$("#draggable").draggable({ 
    drag: function(event, ui) { 
     $(this).text(ui.originalPosition.left > ui.position.left ? 'left' : 'right'); 
    } 
}); 

Demo: http://jsfiddle.net/GNHTW/

+2

Ich denke, das wird nicht erkennen, wenn die Richtung geändert wird, ohne die Maus freizugeben. – metamlkshk

Verwandte Themen