如果在div上滑动,则进行角度检测

时间:2016-01-25 17:56:54

标签: angularjs touch swipe

我想检测用户用手指滑动或用鼠标指针滑过div。

<ul>
    <li ng-repeat="x in names">
      <div ngTouchOrMouseOver="saveName(x) ">{{ x }}</div>
    </li>
  </ul>

是否可以在角度中实现类似ngTouchOrMouseOver的内容? 因此,当我将手指移动到屏幕上并且它恰好位于div的范围内时,我想执行一些代码。

编辑:

找到了这个:How to Capture Touch Events with Angular Directive

显然它适用于mousemove但不适用于touchmove。问题问题后的三年内没有什么新内容?

1 个答案:

答案 0 :(得分:1)

AngularJS有Swipe LeftSwipe Right指令和$scope服务。

  

$ swipe服务是一种服务,它抽象了保持和拖动滑动行为的混乱细节,使实现与滑动相关的指令更方便。

<强>指令:
https://docs.angularjs.org/api/ngTouch/directive/ngSwipeLeft
https://docs.angularjs.org/api/ngTouch/directive/ngSwipeRight

<强>服务
https://docs.angularjs.org/api/ngTouch/service/ $轻扫

&#13;
&#13;
(function(angular) {
  'use strict';
   angular.module('ngSwipeLeftExample', ['ngTouch']);
})(window.angular);
&#13;
  <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.5.0-rc.1/angular.min.js"></script>
  <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.5.0-rc.1/angular-touch.js"></script>
<body ng-app="ngSwipeLeftExample">
  <div ng-show="!showActions" ng-swipe-left="showActions = true">
  Some list content, like an email in the inbox
</div>
<div ng-show="showActions" ng-swipe-right="showActions = false">
  <button ng-click="reply()">Reply</button>
  <button ng-click="delete()">Delete</button>
</div>
</body>
&#13;
&#13;
&#13;