Необходимо вызвать событие $swipe в angularJS
Я использую ngTouch для углового html5-гибридного приложения. И одна из вещей, которая случается, вызывает ошибки, что $ swipe начнется, но не закончится. Например, с помощью приведенного ниже кода: консоль будет регистрировать "проведено смахивание" и ничего больше. Обычно это происходит, когда вы проводите вверх по экрану в симуляторе iOS.
$swipe.bind(angular.element(document.querySelector('#swipeContent')), {
'start': function() {
console.log('swipe started');
},
'end': function () {
console.log('swipe ended');
},
'cancel': function() {
console.log('swipe cancelled');
}
});
Так что я думал о том, чтобы просто использовать setTimeout, который завершает свайп через некоторое время (у кого-нибудь есть идея получше, дайте мне знать). Это означает, что мне нужно вызвать событие 'end' для элемента. Кто-нибудь знает, как это сделать? ниже моя первая попытка (которая, кажется, не работает).
$swipe.bind(angular.element(document.querySelector('#slideContent')), {
'start': function() {
setTimeout(function() {
angular.element(document.querySelector('#slideContent')).triggerHandler('end')
}, 300);
},
'end': function () {
console.log('swipe ended');
},
'cancel': function() {
console.log('swipe cancelled');
}
});