Javascript-форум (https://javascript.ru/forum/)
-   Angular.js (https://javascript.ru/forum/angular/)
-   -   Sortable без jQuery UI (https://javascript.ru/forum/angular/41820-sortable-bez-jquery-ui.html)

Shitbox2 30.09.2013 16:59

Sortable без jQuery UI
 
Хочется полностью избавиться от jQuery в проекте. Тем более, от jQueryUI. Для этого нужно всего лишь заменить плагин Sortable. Кто-нибудь видел Sortable без jQuery (пусть даже урезанный)? Желательно под Ангуляр.

DjDiablo 30.09.2013 17:16

Не вижу смысла избавляться от jQuery, смысл ангуляра не в манипуляции DOM.

Но если хочется то просто напиши sortable.

1) делаешь обьекты перемещаемыми
2) Когда начнешь перемещать то создай div с именем placeholder
2) в процессе перемещения ищи под мышью элементы, ( если навел на placeholder ничего неделай)
3) если находишь под мышью элемент бери placeholder и вставляй перед найденный обьектом
4) как только отпустили мышь, замени placeholder перетаскиваемым элементом
Enjoy !
Перемешать placeholder и заменять его, будешь нативыми функциями (angular тебе здесь не помошник) :)

Более продвинутые версии.
1 вариант ) при наведении на один из sortable элементов требует определять выше середины или ниже стоит мышь. Если выше то placeholder ставится сверху, если ниже то снизу.

2 вариант) Определять вектор движении мыши и ставить placeholder по направлению движения. Если мышь ведут вверх то placeholder сверху, если ведут вниз то placeholder ставится снизу.

Я могу перепутать но по моему 2й способ используют обычно.

Shitbox2 01.10.2013 01:57

Да по сути перетаскивание и сортировка это единственные операции с дом-манипуляцией в куче проектов. Жалко ради этого 100кб тащить. Написать самому можно, но зачем, когда всё давно писано-переписано и оттестировано. Найти только где и кем)


Часовой пояс GMT +3, время: 06:29.