Angularjs no desencadena eventos manejados por addEventListener
Estoy tratando de desencadenar un evento en un<A>
elemento conmousedown
evento manejado poraddEventListener
llamo pero no sé por qué no funciona.
Traté de usarangular.element(el).triggerHandler('click');
pero solo activa el controlador de eventos especificado a través deng-click
.
En el siguiente código, cuando hago clic en el enlace 'disparador', solo se imprime 'primero' en la consola. ¿Cómo hago que imprima 'cero' también?
HTML:
<a id='zero' href="#">zero</a><br/>
<a id="first" href="" ng-click="firstLinkClick()">first</a>
</br>
<a id="trigger" href="" ng-click="triggerLinkClick()">trigger</a>
Javascript:
document.getElementById('zero').addEventListener('click', function() {
console.log('zero');
}, false);
app.controller('myCtrl', function myCtrl($timeout, $scope) {
$scope.firstLinkClick = function() {
console.log('first');
};
$scope.triggerLinkClick = function() {
$timeout(function() {
var el = document.getElementById('zero');
angular.element(el).triggerHandler('click');
}, 100);
$timeout(function() {
var el = document.getElementById('first');
angular.element(el).triggerHandler('click');
}, 100);
};
});