Я искал в STACKOVERFLOW и на других форумах решение моей проблемы - если я пропустил рабочее решение, укажите мне на него.
Моя проблема:
Всякий раз, когда перетаскиваешь элемент (div портлета) в моем сортируемом списке, мне нужно выполнить какое-то действие ДО того, как начнется фактический процесс перетаскивания (из того, что я понимаю до запуска события START).
Чтобы быть более конкретным:
Мои DIV предоставляют пользователю возможность расширять / сворачивать свое тело (как показано в примере на странице пользовательского интерфейса jquery http://jqueryui.com/demos/sortable/#portlets).
Всякий раз, когда вы перетаскиваете элемент, я хочу активировать метод свертывания, чтобы единственным перетаскиваемым визуальным элементом был свернутый DIV.
Однако всякий раз, когда я вызываю мой метод (что-то вроде этого)
$someitem.trigger("toggle.somenamespace")
работает как положено, за исключением того, что ВЫСОТА перетаскиваемого хелпера вычисляется ПЕРЕД тем, как событие запуска запускается в сортируемом элементе, и, следовательно, хелпер имеет высоту исходного элемента в его не свернутом состоянии.
Моя первоначальная мысль об этом была: как сортируемый имеет, например, возможность измерения расстояния перетаскивания до начала фактической процедуры перетаскивания (с опцией: distance ) должна быть возможность подключиться к этому потоку, например, сохранить оригинальную функцию startDrag (или как бы он ни назывался) сортируемого виджета во временной переменной, переопределите его пользовательским обратным вызовом, который сначала вызывает мою функцию свертывания, а затем вызывает исходную функцию, чтобы убедиться, что высота вычисляется правильно.
Однако пока у меня не было большого успеха с таким подходом ...
Обратите внимание, что установка свойств CSS в обработчиках для перетаскивания или события события сортировки не дает желаемого эффекта, так как высота, которую сортируемый виджет рассчитывает для помощника, задается в качестве свойств элемента.
Или - возможно, кто-то знает лучший способ повлиять на высоту помощника, отображаемого во время процесса перетаскивания, это только мое мнение, что мой оригинальный подход (изменение элемента перед процессом перетаскивания, а затем позволить виджету выполнить его расчеты, как это было задумано) было бы лучшим решением ...
спасибо за любую помощь,
Matthias
EDIT:
Установка флага сортировки: forceHelperSize в true и установка размера ui.item / helper в начальном перетаскивателе также не работает, так как это приводит к желаемому эффекту визуально (перетаскивается только свернутый элемент, но останавливает перетаскивание элемента вниз полностью (как если бы предмет все еще имел высоту в своем свернутом состоянии)
проверено помощником: «оригинал» и «клон»