Я пишу новое веб-приложение, которое должно поддерживать операции перетаскивания для элементов на странице (а не перетаскивание файлов).
Это ответ на этот вопрос.
рекомендует использовать Modernizr, чтобы проверить, поддерживает ли браузер перетаскивание HTML5, и либо использовать эту поддержку, либо вернуться к альтернативе, такой как jQuery UI.
Поскольку у них совершенно разные модели, это означает, что весь код перетаскивания должен быть реализован и протестирован отдельно (очень небольшая общая реализация). Это кажется логичным только в том случае, если есть значительные, влияющие на пользователя преимущества перетаскивания HTML5 и если откат к пользовательскому интерфейсу jQuery приведет к ухудшению работы.
Есть ли значительные преимущества от реализации обоих вариантов?
Я думаю, что наибольшим преимуществом перетаскивания HTML5 над jQuery является исключение значительной библиотеки jQuery UI и файлов css.
Тем не менее, существует проблема совместимости браузера, которая делает jQuery очень необходимым.
Я отвечаю конкретно на dnd, поскольку, похоже, это то, о чем вы спрашивали. Я думаю, что некоторые люди путают jQuery с jQueryUI. Использование собственного HTML5 dnd вместе с jQuery - отличное сочетание как по производительности, так и по времени разработки. Поскольку функции dnd пришли из мира IE, поддержка браузеров довольно хорошая (включая, конечно, IE7, а может быть, даже и старше). Использование jQuery дает вам все кросс-браузерные утилиты addClass()
, removeClass()
и т. Д., Которые имеют решающее значение.
С другой стороны, jQueryUI предлагает массу функций, которые вам, вероятно, не понадобятся. Поскольку их dnd полагается на события мыши, а не на нативный dnd, производительность не будет такой хорошей. jQueryUI не следует путать с jQuery. Более 2,5 лет jQueryUI не получал серьезных обновлений! (Да, jQueryUI 1.8rc1 был в январе 2010 г.) Так что не так просто просто сказать, что они добавят встроенную поддержку в будущем, в темпе, который они обновляют, я бы не стал задерживать дыхание.