JQuery UI перетаскивание между DIVs, сглаживание - PullRequest
0 голосов
/ 07 февраля 2012

Меня заинтересовали библиотеки jQuery и jQuery UI , которые они предоставляют по сравнению с практикой программирования на чистом JavaScript.

Я пытаюсь реализовать графический интерфейс перетаскивания для моего хобби-сайта .

$('#artOfBeing').draggable ({ 
    containment: '#dataFrame', 
    cursor: 'pointer', 
    snap: '#dataFrame', 
    helper: 'clone' 
});

$('#dataFrame').droppable({
    drop: handleDropEvent   
});

Я уже вижу преимущества jQuery в том, как легко было обеспечить отличный метод клонирования для значков меню справа (для перетаскивания в пункт назначения drop drop).

Когда я выбираю самый верхний значок меню в правой вертикальной части мышью; любое движение вызывает операцию перетаскивания. Значок переместится в локацию #div (без анимации перехода, пересекающей div (источник и место назначения).

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

Мне также хотелось бы получить некоторую информацию относительно отмены выполняемой операции перетаскивания.

Пожалуйста, дайте советы о том, как лучше всего изучить эти проблемы библиотек jQuery.

РЕДАКТИРОВАТЬ: Решение, предоставленное Nabab ниже, имеет некоторые странные эффекты. Во-первых, я получаю разные результаты, в зависимости от того, проверяю ли я их на локальном компьютере или загружаю с сервера веб-хоста.

В локальных тестах IE9 функционирует хорошо, а перетаскивание значков ограничено DIV, в котором находятся элементы перетаскивания и перетаскивания. Локальное выполнение с помощью FF или Chrome и результаты странные, элемент перетаскивания ведет себя странно.

Онлайн веб-сервер и все они ведут себя одинаково. Разделительный элемент игнорируется, и я могу перетаскивать значок в любом месте на экране, который работает, но я хотел бы ограничить перетаскивание внутри содержимого и разделов nav.

Есть идеи, почему такое поведение имеет место?

1 Ответ

2 голосов
/ 07 февраля 2012

Если у вас есть защитная оболочка, было бы более логично, чтобы ваш источник был внутри этой оболочки.Почему бы вам не обернуть центральное пространство + пространство кнопок в DIV, который стал бы сдерживающим фактором?Выполнение анимации было бы очень сложным, поскольку положение элемента зависит от мыши (которая его перетаскивает), и если ваш источник находится вне контейнера, я не могу представить, как он будет выполнять этот переход ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...