我正在尝试禁用 Angular 应用程序的快捷键。
我在 Angular 组件中使用以下代码:
@HostListener('window:keydown', ['$event'])
handleHotkey(event: KeyboardEvent){
...
//Do Something
...
event.preventDefault();
}
这在谷歌浏览器中正常工作,但在Internet Explorer 11中不起作用。
当我在IE11中按ctrl + p时,打印窗口将打开,并在函数中定义功能。
在IE11中执行此操作的正确方法是什么?
更新:
IE似乎没有解决方案。有 2 种(丑陋的(替代方案:您可以完全禁用 Ctrl
键,或者您可以显示警报,打印窗口不会显示。:(
不工作:
我想,也许
return false;
在你的方法结束时可以解决这个问题。
但是它会取消浏览器的每个keydown
,所以你应该编写并if
语句来检查event.keyCode
或类似的东西,以决定你应该返回false
还是true
(让浏览器处理其他事件(。