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