我现在已经开始创建自定义指令并向我的DOM元素添加事件侦听器,但现在我想向document
添加一个事件侦听器。显然没有<document>
标签所以我不能使用指令,或者可能有一些特殊的技巧?
监听器将用于处理文档上的单击,如果可能,它将需要访问$scope
,因为它需要找出当前打开的下拉菜单,以便关闭它们。
答案 0 :(得分:2)
您可以将$document
注入您的指令:
app.directive('myDirective', function ($document) {
return {
link: function (scope, element, attrs) {
console.log(scope);
console.log($document);
}
}
})
然后在任何元素上使用该指令,具体取决于您想要的范围:
<html ng-app="myApp" my-directive>