Улучшить эту документацию Просмотреть исходный код $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–2020 Google, Inc.
Licensed under the Creative Commons Attribution License 3.0.
https://code.angularjs.org/1.8.2/docs/api/ngTouch/service/$swipe