在我的应用程序中同时存在多个对话框,每个对话框都有自己的快捷键,因此我需要知道它是否用于正确执行这些快捷键。 例如:如果我按“ esc”键,则只有焦点对话框必须关闭。
如何检测正在关注的对话框?
编辑
我制作了一个测试演示,以使场景更易于理解: https://stackblitz.com/edit/multiple-dialogs
答案 0 :(得分:0)
尝试hasFocus()来确定焦点所在的人
答案 1 :(得分:0)
我找到了方法!
这里是任何人需要的:
import { DomHandler } from 'primeng/api';
import { Dialog } from 'primeng/dialog';
@ViewChild('dialog') dialog: Dialog;
isDialogFocused() {
if (parseInt(this.dialog.container.style.zIndex) == DomHandler.zindex) {
console.log(this.dialog.header + " is focused!");
}
}