2014-06-25 23 views
6

Jestem bardzo nowy w zakresie kątowego JS i pracy nad aplikacją mobilną. W ramach tego muszę napisać usługę, która obsługuje zdarzenia dotykowe, takie jak przesunięcie w lewo, przesunięcie w prawo, przesunięcie w górę i przesunięcie w dół, i muszę oddzwonić w zależności od tego, która czynność zostanie wykonana. Daj mi znać, jeśli pojawią się przydatne tutoriale.Angular JS Touch and Swipe

+0

To, czego szukasz, jest już dostępne w wersji kątowej. Zajrzyj na https://docs.angularjs.org/api/ngTouch – TMichel

Odpowiedz

9

Jak wspomniano w komentarzach ngTouch jest dobrym miejscem do rozpoczęcia, jednak ma tylko przesuń w lewo i przesuń w prawo. Polecam używanie Angular Gestures; to jest kanciasty realizacja hammer.js i ma prawie wszystko, czego kiedykolwiek potrzeba:

  • DoubleTap
  • dragstart
  • przeciągnij
  • dragup
  • dragdown
  • dragleft
  • dragright
  • przeciągnij
  • hold
  • szczypta
  • pinchin
  • pinchout
  • uwolnienie
  • obracać
  • machnięcia
  • swipeup
  • swipedown
  • swipeleft
  • swiperight
  • tap
  • dotykowy
  • transformstart
  • przekształcić
  • transformend
2

Innym rozwiązaniem jest moduł angular-swipe. Zastępuje ono ng-swipe i używa tych samych dyrektyw, dodając w górę iw dół:

ng-swipe-up 
ng-swipe-down 
ng-swipe-left 
ng-swipe-right 
1

w HTML użyłem 5 zakładek i jestem w stanie przesunąć w lewo lub w prawo gładko. mój kod podany poniżej.

OTRZYMAŁA | WYSŁANE | DELETED | zarchiwizowanejraporty

W HTML

ng bezstykowa lewej = "leftTab()" ng bezstykowa prawej = "rightTab()"

i kontroler.

$scope.leftTab = function(){ 
    if($scope.tab != 4){ 
     $scope.getAlertsSummary($scope.tab + 1); 
    } 
}; 

$scope.rightTab = function(){ 
    if($scope.tab != 0){ 
     $scope.getAlertsSummary($scope.tab - 1); 
    } 
}; 

Tutaj getAlertsSummary służy do pobierania danych z zakładki.