JS-библиотека с поддержкой drag and drop, совместимая с iOS и обычными браузерами
Проблема: Ищу JS-фреймворк с функциональностью перетаскивания, который был бы совместим как с мобильными устройствами (iOS), так и с обычными браузерами.
У меня есть веб-приложение, и мне очень сложно реализовать функционал drag-and-drop на iOS. Хотелось бы найти решение, которое работало бы для обеих платформ. Есть ли у кого-то предложения или рекомендации?
5 ответ(ов)
Вот два встроенных решения на jQuery для реализации перетаскивания:
Также стоит отметить, что есть фреймворк jQuery Mobile, который, но не поддерживает перетаскивание из коробки: jQuery Mobile.
Попробуйте Dojo. Он отлично работает и является достаточно зрелым инструментом. Вот ссылка: http://dojotoolkit.org/
На сайте http://www.kendoui.com/ это должно работать. Он также поддерживает drag and drop, хотя функция всё еще находится в стадии бета-тестирования.
Если вы ищете библиотеки JavaScript для мобильной разработки, вот несколько вариантов:
Zepto - это легковесная библиотека, которая поддерживает мобильные платформы, такие как iOS 4+, Android 2.2+ и webOS 1.4.5+. Она имеет схожий синтаксис с jQuery, но с меньшим размером.
jQuery - одна из самых популярных библиотек JavaScript, которая предоставляет множество функций для работы с DOM, а также кросс-браузерную совместимость. Также стоит упомянуть jQuery Mobile - фреймворк на базе jQuery, который специально предназначен для создания мобильных приложений.
jQTouch - это библиотека для создания мобильных веб-приложений с эффектами, похожими на нативные приложения. Она создана на основе jQuery и поддерживает собственные темы.
Prototype - это библиотека, которая предлагает расширенную функциональность для работы с JavaScript, хотя и не так распространена в мобильной разработке, как некоторые другие варианты.
Sencha и Sencha Touch - мощные фреймворки для создания функциональных и визуально привлекательных веб-приложений. Sencha Touch ориентирован на мобильные платформы, предоставляя множество компонентов для быстрой разработки приложений.
Выбор между этими библиотеками зависит от ваших конкретных требований и предпочтений в требованиях к производительности и функционалу.
Вы можете использовать jQuery UI для реализации функции перетаскивания и дополнительную библиотеку, которая отображает события касания на их аналогичные события мыши. Я думаю, это должно решить вашу проблему:
https://github.com/yeco/jquery-ui-touch-punch
Чтобы добавить поддержку событий касания, просто подключите скрипт jquery.ui.touch-punch.min.js после ваших скриптов jQuery UI.
ДЕМО:
Как определить мобильное устройство с помощью jQuery
Как перенаправить на другую веб-страницу?
Прокрутка к элементу с использованием jQuery
Как определить нажатие клавиши Esc?
Как получить данные формы с помощью JavaScript/jQuery?