javascript - 是否支持在触摸设备上拖放?

标签 javascript html drag-and-drop

W3C spec没有明确使用触摸这个词。

This是互联网上流行的答案,但是

手动将触摸事件转换为鼠标事件是行不通的(或者太复杂了+它会在未来的浏览器中崩溃)。请参见下面的代码作为示例:

myDragElement.on("touchstart", function (e) {
    e.preventDefault();
    drag.trigger("dragstart");
});
myDragElement.on("touchmove", function (e) {
    drag.trigger("mousemove", e.originalEvent); // what event to send to .trigger? does it even matter?
});

在触摸设备上完成拖放的最原生方式是什么?我可以手动编写代码或查找插件,但原生解决方案会更好。

最佳答案

我有一些 slider ,它们需要控制触摸、拖动等,但其中一些根本无法在触摸设备上正常工作,因为它们只使用 HTML 5 中的 native 事件。我找到了有用的插件来处理这件事。

尝试一下

http://eightmedia.github.io/hammer.js/

GitHub Wiki

源代码中包含演示,以查看在触摸设备上运行时会发生什么事件

关于javascript - 是否支持在触摸设备上拖放?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18214010/

相关文章:

javascript - 如何使用charCode赋值?

javascript - 移动 slider 时在图像之间切换

javascript - HTML5 - 通过浏览器访问 iPhone 照片库

java - 在java中拖动多个按钮 View

java - 棋盘游戏中如何移动跳棋棋子?

javascript - 使用 javascript 或 jquery 按类名自动单击链接?

javascript - 使用 JavaScript 访问 Chatter API(同源问题)?

html - 在 <li> 上扩展背景图像

jQuery 高度动画导致背景颜色被忽略

javascript - 按列表特定项目的字段对多个列表中的 d'n'd 列表项目进行排序