Исключить элемент из дескриптора на jQuery Dragable - PullRequest
5 голосов
/ 23 сентября 2009

У меня есть перетаскиваемый <div> с overflow, установленным на auto, для отображения полосы прокрутки, когда содержимое слишком широкое.

Я хочу, чтобы все содержимое <div> было перетаскиваемым, поэтому я не добавил дескриптор. Теперь, когда я пытаюсь перетащить полосу прокрутки, перетаскивается весь <div> вместо прокрутки содержимого.

Есть ли способ исключить элемент из дескриптора перетаскиваемого <div> в jQuery?

Мне нужно что-то вроде:

$("#element").draggable({
    handle: "not(#thisTable)"
})

Есть ли способ сделать это с помощью селекторов или что-то в этом роде?

Ответы [ 2 ]

18 голосов
/ 23 сентября 2009

tnx за ваш ответ, но я нашел то, что считаю лучшим решением ....

есть еще одна опция для перетаскиваемого объекта, называемая 'cancel' , и она исключает выбранный элемент из дескриптора перетаскиваемого элемента ...

$('#container').draggable('option', 'cancel', '#excludedElement');

надеюсь, это поможет кому-то еще ...

0 голосов
/ 23 сентября 2009

Добавьте div внутри div, width & height 100%, без полей, без отступов и поместите туда свой контент. Установите его переполнение на значение по умолчанию и установите его как дескриптор. Таким образом, полоса прокрутки родительского элемента div больше не будет находиться в дескрипторе, поэтому не будет инициировать перетаскивание.

...