1

我正在使用angular 1.4.0和jQuery v1.11.1。AngularJS ngTouch和ngSwipe拋出錯誤「TypeError:element.on不是函數」

我正在嘗試使用ngTouch/ngSwipe。兩者都不會停止在應用程序加載時(在綁定函數內)拋出錯誤「TypeError:element.on不是函數」。可悲的是我不能在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){}) 

參考

相關問題