猿问

移动端 javascript 实现长按拖动

最近我要在移动端实现一个长按拖动功能,发现一个库 https://github.com/bevacqua/d... 非常好用,用起来也非常简单:

下面是一个可以运行的例子:

在 pc 上可以用鼠标按住然后拖动交换 box1 和 box2 的位置,在移动端可以轻按然后拖动交换位置。。这个离满足的需求已经非常非常接近了。但是问题来了:
我不想轻按拖动,而是长按拖动 因为这明显在移动端是更加合适的交互,也是产品需求...

然后我就看了一下dragula的源码 发现这一行: https://github.com/bevacqua/d...

var touch = {

    mouseup: 'touchend',

    mousedown: 'touchstart',

    mousemove: 'touchmove'

  };

https://github.com/bevacqua/d... 大概就是在这里把鼠标事件替换为触摸事件的。

然后我想把它改成长按,把 touchustart 改成类似于 hammer.js 里面那种 panstart, 或者像这种自定义一下:https://segmentfault.com/a/11... 但是...dragula 这个源码感觉写得有点乱 改了好久不知道怎么和它结合起来...


aluckdog
浏览 1375回答 1
1回答
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答