可以使用angular的ngTouch库来检测长按(触摸/保持/释放到位)事件吗?

gre*_*zap 6 long-click angularjs angularjs-ng-click

我的AngularJS应用程序需要能够检测到触摸事件的开始和停止(无需滑动).例如,我需要在触摸开始时执行一些逻辑(用户按下他们的手指并按住),然后在相同的触摸结束时(用户移开他们的手指)执行不同的逻辑.我正在考虑为此任务实现ngTouch,但ngTouch.ngClick指令的文档仅提及触发事件.ngTouch.$ swipe服务可以检测触摸事件的开始和停止,但前提是用户在触摸时实际滑动(水平或垂直移动手指).有人有主意吗?我是否需要编写自己的指令?

gre*_*zap 13

2014年11月25日更新:

等宽角锤图书馆现在已经过时了,所以Hammer.js团队建议使用ryan mullins版本,它是用锤子v2.0 +构建的.


我挖到了ngTouch,从我可以说它除了点击和滑动之外的任何东西都没有支持(截至本文撰写时,版本1.2.0).我选择使用更成熟的多点触控库(hammer.js)和经过良好测试和维护的角度模块(角锤),将所有hammer.js的多点触控功能作为属性指令.

https://github.com/monospaced/angular-hammer

  • @PhươngNguyễn因为它的分叉是旧的,不再主动维护,不包含版本标签,当时我发布这个也不支持凉亭.我挖掘了所有不同版本的代码,等宽版本是最好的. (7认同)
  • @PhươngNguyễn这不是信用问题(感兴趣的人可以通过github查看谁开发了原始库),但它是关于提供当前/有效的库使用.原件已过时,我不会在生产中使用它,那么为什么我会指点人们呢?欢迎来到开源软件世界.仅供参考:其他几个人在没有评论的情况下对这个答案进行了评价(取消了赞成票). (7认同)
  • 也不确定为什么这么多人都在贬低这个答案.如果他们中的一些人会发布原因以便可以改进,那就太好了.我已经在多个企业/生产角度项目中使用这个解决方案现在已经有近一年的时间了,它已经运行得很好,到目前为止,ngTouch仍然存在一些严重的问题并且缺乏对不同手势的支持.如果您知道更好的选择,请告诉我们. (5认同)
  • @Egg"仅供参考:其他几个人在没有评论的情况下对这个答案进行了贬低(取消了支票)." 欢迎来到stackoverflow :) (2认同)