AngularJS ha incorporato jqLite. Fare riferimento la documentazione per vedere i metodi disponibili
Angular jqLite
per lo scenario:
$
non funziona in angularJS, angular.element
è l'equivalente di $
. ma jqLite essendo molto limitata non supporta "selettori di ID" significa che non si può semplicemente utilizzare angular.element
per selezionare un elemento per classe o id come
var element = angular.element('#foo')
è necessario utilizzare il seguente
var element = angular.element(document.querySelector('#foo'))
È potrebbe chiedere "perché non utilizzare document.getElementById ('# foo')?" ma ricorda che stiamo usando jqLite, quindi dobbiamo usare angular.element
per poter usare i metodi jqLite sull'elemento.
È possibile utilizzare .triggerHandler()
anziché .trigger()
. jQuery triggerHandler docs
jqLite non supporta click()
. La soluzione alternativa sarebbe quella di utilizzare .ready()
element.ready(function() {
console.log('Click');
});