Вопрос по jquery – Автоматически прокручивать сбрасываемый div при перетаскивании

0

В этой скрипке:http://jsfiddle.net/adrianjsfiddlenetuser/zyUkd/76/

Кнопки, которые не имеют розового цвета фона, можно перетаскивать.

Проблема заключается в том, что при перетаскивании между элементами div, на которые перетаскивается div, автоматически прокручиваться вниз при попытке добавить перетаскиваемый div в конец списка.

Как я могу автоматически прокрутить div (по горизонтали / вертикали), куда я перетаскиваю?

Ваш Ответ

1   ответ
2

Working demo http://jsfiddle.net/X3rKJ/ or http://jsfiddle.net/X3rKJ/1/

добавлятьon событие прокрутки и каждый раз, когда вы перетаскиваете его во второй div, оно идентифицирует событие и прокручивается.

Это поможет. :) ура

Please note on событие связывается с объектом this, то есть с div, откуда пользователь перетаскивает, когда список становится неравномерным по высотеsolution can be: Перетащите его в элемент div, а затем прокрутите его до дна или, возможно, поиграйте с этим объектом и всегда выбирайте больший контейнер в качестве ссылки для прокрутки, хотя утешает комментарий. :) Это не так плохо, как решение для -1 в качестве кандидата, но все хорошо. Anyhoo, :(

Это решение работает нормально, чтобы справиться с неравной высотой div, но нужно добавить утверждение, что если 2 div имеют неравную высоту, берут больше в качестве базовой ссылки наscroll.

code

var sortlists = $(".connected").sortable({
     connectWith : ".connected",
     items       : ".myDivs:not(.excludeThisCss)",
     tolerance   : 'pointer',
     revert      : 'invalid',
     forceHelperSize: true

}).on('scroll', function() {
     sortlists.scrollTop($(this).scrollTop());
}).disableSelection();;


​
когда вы используете сортируемую функцию и перемещаете элемент вниз в пределах одного и того же списка, тогда оба списка прокручиваются.

Похожие вопросы