Я не пытаюсь захватить событие, когда пользователь закрыть или отменить File Upload
окнаAngularJs: document.body.onfocus внутри контроллера директивы
<input type="file">
Поскольку там нет встроенного в слушателе для близкого события из загрузить файл, я пытаюсь захватить его через document.body.focus
событие, что-то вроде одного suggested here
Я получаю его запустить с помощью JavaScript
document.body.onfocus = function() { console.log("hit me") }
Теперь мне нужно реализовать его в Angular в моей директиве, чтобы я мог поместить логику внутри события focus
, используя объекты в контроллере.
Как получить доступ к onfocus
событиям document.body
внутри углового контроллера?
От @Phil предложение (используя ссылку)
... this is a directive with controller
angular.directive("addPost", addPost);
addPost.$inject = ["$document", "$log"];
function addPost($document, $log) {
return {
...
link: link,
...
};
function link() {
$document.find('body').on('focus', function (e) {
$log.debug('HIT ME!');
});
}
Попробуйте использовать 'ng-focus'. –
@ AlbertoI.N.J. в моем приложении элемент '
' находится за пределами угловой области, я имею в виду, что он находится в режиме MVC. Как я могу привязать к нему ng-focus? –Вы можете попробовать '$ document.find ('body'). On ('focus', function (e) {...})' – Phil