AngularJS: Ошибка: событие undefined (только Firefox)

Даже если я определяю событие, и он работает в Chrome, он не работает в Firefox?

app.controller('lightbox_close_controller', ['$scope', '$rootScope', function($scope, $rootScope) {

        $scope.close_rating_lightbox = function(event) {

            if (!$(".lightbox").hasClass("mobile_ratebox")) {
                event.stopPropagation();
                $("#image_in_lightbox_inside").empty();
            }
        }
    }

]);

Ответ 1

Pass $event из ui

like

<button ng-click="close_rating_lightbox($event)">Click Me</button>

Ответ 2

Я обнаружил, что вы также можете получить эту ошибку, если забудете добавить аргумент события, если в обработчике события, т.е.

onClicked(event){
}

Ответ 3

та же проблема в Angular 2, firefox является более строгим в объявлении события

//in chrom works fine  
//in firefox throws event is undefined
     @HostListener('click') onClick() {
         console.info(event);
    }



// to fix it you have to add
     @HostListener('click', ['$event']) onClick(event) {
     console.log(event)
    }