我正在尝试禁用Angular应用程序的快捷键。
我在Angular组件中使用以下代码:
@HostListener('window:keydown', ['$event'])
handleHotkey(event: KeyboardEvent){
...
//Do Something
...
event.preventDefault();
}
这适用于Google Chrome,但在Internet Explorer 11中无效。
当我按下ctrl + p然后在IE11中打开打印窗口以及我在功能中定义的功能。
在IE11中执行此操作的正确方法是什么?
答案 0 :(得分:1)
<强>更新强>
IE似乎没有解决方案。有两个(丑陋)替代方案:您可以完全禁用Ctrl
键,或者您可以显示警报,并且打印窗口不会显示。 :(
无效:
我认为,方法结束时可能 return false;
可以解决这个问题。
但它会取消浏览器的每个 keydown
,因此您应该编写if
语句来检查event.keyCode
或类似的内容,以决定是否你应该返回false
或true
(让浏览器处理其他事件)。