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