1

Я использую угловые 1.4.0 и jQuery v1.11.1.Ошибка AngularJS ngTouch и ngSwipe «ТипError: element.on не является функцией»

Я пытаюсь использовать ngTouch/ngSwipe. Оба не перестанут бросать ошибку «TypeError: element.on не является функцией» при загрузке приложения (внутри функции bind). К сожалению, я не могу воспроизвести эту ошибку в plunkr, во всяком случае ngSwipe работает в этот вопрос, когда:

bind: function(element, eventHandlers, pointerTypes) { 
     ... 
    pointerTypes = pointerTypes || ['mouse', 'touch']; 
    element.on(getEvents(pointerTypes, 'start'), function(event) {... <-- error here 

Я не думаю, что это слишком много, вопрос с моим другим кодом, но я пропускаю какая-то зависимость. У кого-то появилась идея?

Заранее спасибо.

ответ

0

Метод $on является частью объекта angular.element, а метод on является частью объекта jQuery. element - объект DOM, который не имеет такого метода. Ближайшим эквивалентом будет:

element.addEventListener(getEvents(pointerTypes, 'start'), function(event){}) 

или:

$(element).on(getEvents(pointerTypes, 'start'), function(event){}) 

Ссылки