Необходимо вызвать событие $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');
            }
        });

0 ответов

Другие вопросы по тегам