Улучшить документациюПросмотреть исходный код$swipe
- сервис в модуле ngTouch
Обзор
Сервис $swipe — это сервис, абстрагирующий более сложные детали поведения свайпа при удержании и перетаскивании, что облегчает реализацию директив, связанных со свайпом.
Требуется модуль ngTouch для установки.
$swipe используется директивными элементами ngSwipeLeft и ngSwipeRight в ngTouch.
Использование
Сервис $swipe — это объект с единственным методом: bind. bind принимает элемент, который необходимо наблюдать на предмет свайпа, и объект с четырьмя обработчиками событий. Смотрите документацию для bind ниже.
Методы
-
bind();
Основной метод
$swipe. Он принимает элемент, за которым необходимо следить на предмет движений свайпа, и объект, содержащий обработчики событий. Типы указателей, которые следует использовать, можно указать в качестве необязательного третьего аргумента, который представляет собой массив строк'mouse','touch'и'pointer'. По умолчанию$swipeбудет прослушивать событияmouse,touchиpointer.Четыре события:
start,move,end, иcancel.start,move, иendпринимают в качестве параметра объект координат вида{ x: 150, y: 310 }и исходные данныеevent.cancelполучает исходные данныеeventв качестве единственного параметра.startвызывается приmousedown,touchstartилиpointerdown. После этого события$swipeотслеживает событияtouchmove,mousemoveилиpointermove. Эти события игнорируются до тех пор, пока общее перемещение в любом измерении не превысит небольшой порог.Как только этот порог превышен, либо горизонтальная, либо вертикальная дельта больше.
- Если горизонтальное расстояние больше, это свайп, и следуют события
moveиend. - Если вертикальное расстояние больше, это прокрутка, и мы позволяем браузеру взять на себя управление. Отправляется событие
cancel.
moveвызывается приmousemove,touchmoveиpointermoveпосле того, как вышеописанная логика определила, что свайп происходит.endвызывается, когда свайп успешно завершается сtouchend,mouseupилиpointerup.cancelвызывается либо приtouchcancelилиpointercancelиз браузера, либо когда мы начинаем прокрутку, как описано выше. - Если горизонтальное расстояние больше, это свайп, и следуют события
© 2010–2018 Google, Inc.
Licensed under the Creative Commons Attribution License 4.0.
https://code.angularjs.org/1.6.9/docs/api/ngTouch/service/$swipe