Повернуть изображение, пока идет сканирование, используя угловые ng-swipe-left и ng-swipe-right
Я использую angular's
ng-swipe-left
а также ng-swipe-right
поймать свайп событие (на связи). Я пытаюсь сделать так, чтобы изображение вращалось в соответствии со скоростью и направлением перелистывания, пока оно выполняется. Проблема в том, что я могу поймать событие только после окончания свайпа.
1 ответ
Вы должны слушать стартовое событие. Он вызывается на mousedown или touchstar. Но ваша проблема заключается в следующем: после события start $swipe отслеживает события touchmove или mousemove, которые все еще игнорируются, пока общее расстояние, пройденное в любом измерении, не превысит небольшой порог.
Как только этот порог превышен, создается событие перемещения.
Таким образом, вы должны добавить слушателя на событие перемещения, что невозможно только с Angularjs.
Я думаю, что вы должны использовать что-нибудь с JQuery следующим образом:
$('#someElm').bind('touchmove',function(e){
e.preventDefault();
var touch = e.originalEvent.touches[0] || e.originalEvent.changedTouches[0];
var elm = $(this).offset();
var x = touch.pageX - elm.left;
var y = touch.pageY - elm.top;
if(x < $(this).width() && x > 0){
if(y < $(this).height() && y > 0){
//CODE GOES HERE
console.log(touch.pageY+' '+touch.pageX);
}
}
});
Угловая документация по этому вопросу: AngularJS API: $swipe