JQuery оживить вертикально вверх - PullRequest
0 голосов
/ 30 октября 2011

Я пытаюсь добавить перетаскиваемый элемент на мою страницу, используя плагин draggable jquery ui (http://jqueryui.com/demos/draggable/).На данный момент у меня есть это:

$("#makeMeDraggable").draggable({ axis: "y"});

Я уже пробовал:

$("#makeMeDraggable").draggable({ axis: "y",  limit: {top: 10, bottom: 550}});

Мне нужно только разрешить перетаскивание по вертикали - но только вверх (запретить перетаскивание вниз).

1 Ответ

1 голос
/ 30 октября 2011

попробуйте этот код:

$("#makeMeDraggable").draggable({ axis: "y"});

var lastYPosition = null;

$("#makeMeDraggable").draggable({
   drag: function(event, ui) {

       // set with the initial y position
       if(lastYPosition === null) {
           lastYPosition = ui.originalPosition.top;           
       }

       // don't do the drag if the new y position is larger than the old one
       if(ui.position.top > lastYPosition) {
           return false;   
       }

       // update the last y position with current value
       // so we can check against it next time
       lastYPosition = ui.position.top;
   }
});

А вот рабочий пример: (проверено в Chrome и Safari) http://jsfiddle.net/jameszaghini/s4vfX/

...