我有这个指令监视keypress
事件而不关注输入字段或其他东西。摘自question。只修改了一下checkvar myApp = angular.module(' userMain',[]);
myApp.directive('keypressEvents', ["$document", "$rootScope", function ($document, $rootScope) {
function link($scope, $element, $attrs) {
$document.bind('keypress', function (e) {
var key = String.fromCharCode(e.which);
if(key == 1 || key == 2 || key == 3) {
alert(key);
$rootScope.$broadcast('keypress', e, String.fromCharCode(e.which));
}
});
}
return {
link: link
};
}]);
这是标记,由控制器呈现:
<div keypress-events>
<div class="row question-content bg-warning">
<p>{{ question.question }}</p>
</div>
<p>test template</p>
</div>
每当我运行此页面时,我都会得到一个空白页面。没有标记甚至加载!
奇怪的是,当我按下1
时,我会在警告框中显示它。这意味着它正在发挥作用。但它阻碍了任何标记的呈现。
任何帮助?