javascript - HTML5 拖放与 jQuery UI 拖放

标签 javascript jquery html jquery-ui drag-and-drop

2017 年制作拖放式构建器的最佳方式是什么?是的,有人问过这个问题before但那是 5 年前的事了,我想情况已经改变了? HTML5、jQuery UI 还是现在有其他选择?

最近的一个问题 Form Builder From Scratch - HTML 5 Drag and Drop, or JQuery UI Draggable, or What?也没有得到答复。

任何帮助都会很棒!我已经开始尝试两者(我从未使用过 HTML5 或 jQuery UI 的拖放,所以我很难做出决定。)而且 jQuery UI 似乎更易于使用和理解,但也似乎有很多问题,嗯至少在代码笔中。

最佳答案

我们刚刚对 ReactJs 的拖放进行了一些研究,老实说,另一边有点难过。因此,如果您正在寻找纯 HTML 5 拖放,这是一个很棒的网站,可以向您展示您有多糟糕: https://caniuse.com/#feat=dragndrop

因此,在撰写本文时,如果您使用纯 HTML5 DND,您实际上不会涵盖移动场景。

现在,本文中未列出的是使该功能在浏览器中看起来相同的所有边缘情况。在 Edge、Firefox 和 Chrome 之间,一个添加一个图标来显示您正在拖动项目,一个在复制的元素上有轻微的不透明度,一个做其他事情。无论哪种方式,对齐这些设计(取决于你的设计团队有多烦人)可能很容易(例如只要拖放有效就不要在意)到不可能(例如在我拖动时摆脱图标)。

现在谈到 JQuery,它已经存在了一段时间,但这并不意味着它也没有缺点。因为它运行在 JS 层而不是浏览器本身,根据系统中发生的情况,它会感觉有点慢。我也确实注意到它开始拖延烦人的情况,比如当你试图滑动页面以在 Edge 中滚动时。这也可能是我们的编程不好。

我认为最后我们只是将 React Dnd 与 HTML5 后端一起使用。似乎工作得很好,对于那些移动场景,我们只有菜单选项以不同的形式公开相同的功能。它最终有助于提高可访问性,因为通过键盘快捷键解释所有拖放操作有点烦人。

不确定这是否有帮助,但如果我记得(已经大约 6 个月了),那就是失败了。

关于javascript - HTML5 拖放与 jQuery UI 拖放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45668509/

相关文章:

javascript - 无法通过 AJAX 调用找到 $wpdb 变量

javascript - 无法获取属性 'addEventListener'

javascript - 在不受支持的浏览器上的 promise

javascript - Backbone 与 Rails 中的模型混搭同步

javascript - 弹出窗口周围的渐变边框

javascript - 将 Native Promise 转换为 JQuery 的 Promise(适用于 IE)

html - 为嵌套列表重置 CSS 计数器,格式为 1.1、1.2、

html - 删除 div 后的回车

javascript - AND 和 OR 运算符、正则表达式和值长度

javascript - 在 codeIgniter 中使用单个表进行动态下拉