touch.js 763 B

123456789101112131415161718192021
  1. export const touch = Behavior({
  2. methods: {
  3. touchStart(event) {
  4. this.direction = '';
  5. this.deltaX = 0;
  6. this.deltaY = 0;
  7. this.offsetX = 0;
  8. this.offsetY = 0;
  9. this.startX = event.touches[0].clientX;
  10. this.startY = event.touches[0].clientY;
  11. },
  12. touchMove(event) {
  13. const touch = event.touches[0];
  14. this.deltaX = touch.clientX - this.startX;
  15. this.deltaY = touch.clientY - this.startY;
  16. this.offsetX = Math.abs(this.deltaX);
  17. this.offsetY = Math.abs(this.deltaY);
  18. this.direction = this.offsetX > this.offsetY ? 'horizontal' : this.offsetX < this.offsetY ? 'vertical' : '';
  19. }
  20. }
  21. });