2013-08-03 5 views
0

Исправление jQuery UI перетаскиваемого элемента на ось довольно просто. Вы просто задали опцию оси, но это все еще допускает два направления перетаскивания.Сделать jQuery UI перетаскиваемый элемент только перетаскиваемым в нисходящем направлении

Как можно ограничить перетаскивание только в одном направлении (вниз)?

$('.settings').draggable({axis:'y'}); делает .settings перетаскивая вверх и вниз, но как я могу заставить его работать только в направлении вниз?

+0

Вот один, который идет вверх только: http://stackoverflow.com/questions/16619895/restricting-jquery-ui-draggable-to-drag-up-only-within-a-given-area – DevlshOne

+0

@ DevlshOne Этот код не имеет смысла. Его реализация draggable не делает ничего, чтобы блокировать перетаскивание вниз, но оно блокирует движение вниз? –

+0

Вы смотрите на вопрос или на принятый ответ? Его код на самом деле довольно блестящий. Он проверяет, не перетаскивается ли перетаскиваемый из 'top' DOM и затем отклоняет это движение, если оно есть. Вам просто нужно реализовать одно и то же, но относительно «нижней» DOM. – DevlshOne

ответ

1
$('#repel').mousemove(function() { 
    var z = $(window).scrollTop(); 
    var o = $('#repel').offset().top; 
    var h = $('#repel').height(); 
     $("#containment-wrapper").css({ 
      top: o + h -2000 
     }); 
    if (z < 10) { 
     $("#containment-wrapper").css({ 
      top: -850 
     }); 
    } else { 
     $("#containment-wrapper").css({ 
      top: o + h -2000 
     }); 
    } 
}); 
Смежные вопросы