无法在document.bind中设置作用域
问题描述:
我试图重置两个在“esc”keyup事件之前定义的作用域,但在检出它们时显然不起作用。 $文档是在我的控制器的依赖关系上定义的。无法在document.bind中设置作用域
这里是我试过:
$document.bind('keyup', function (event) {
if (event.keyCode == 27) {
$scope.currentPage = false;
}
});
我也尝试了jQuery的方式。它不起作用:
jQuery(document).keyup(function (event) {
if (event.keyCode == 27) {
$scope.currentPage = false;
}
});
我错过了什么?怎么了?提前致谢!
答
使用$ scope。$ apply(function(){...});强制Angular digest循环运行。
您的代码将是:
$document.bind('keyup', function (event) {
if (event.keyCode == 27) {
$scope.$apply(function() {
$scope.currentPage = false;
});
}
});
+0
工程就像一个魅力,谢谢! – Guney
http://stackoverflow.com/questions/15424910/angularjs-access-scope-from-outside-js-function – adeneo