多个对话框。如何发现重点是哪一个?

时间:2018-11-26 14:05:11

标签: javascript angular dialog primeng

在我的应用程序中同时存在多个对话框,每个对话框都有自己的快捷键,因此我需要知道它是否用于正确执行这些快捷键。 例如:如果我按“ esc”键,则只有焦点对话框必须关闭。

如何检测正在关注的对话框?

编辑


我制作了一个测试演示,以使场景更易于理解: https://stackblitz.com/edit/multiple-dialogs

2 个答案:

答案 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!");
  }
}