我们怎么知道有多少弹出窗口是打开的

How do we know how many popups are open?

本文关键字:窗口 多少 我们      更新时间:2023-09-26

在我的应用程序中,窗口打开了pop1,pop1打开了pop2,pop2打开了pop3。我是pop3。我如何知道在jquery或javascript 中pop3之前打开了多少窗口/弹出窗口

假设:

  • 你对"窗口/弹出窗口"一词的使用意味着"模态对话框"
  • 它们都有一个只有模态使用的类(在我的示例中,我将使用.ui-dialog
  • 这给出了当前打开的模态数量,而不是打开了多少

var modalsCurrentlyOpen = $('.ui-dialog').length;

您可以初始化一个计数器变量,然后在运行window.open时向其添加一个。但是后来a) 当打开的弹出窗口关闭时(可能使用隐藏字段值),您需要向父窗口发送一个可用窗口,卸载时如下所示:opener.document.your_form.counter.value++;b) 如果用户有弹出窗口阻止程序,这是行不通的。

我想明白了。这可能对任何寻找答案的人都有帮助。在下面的代码中,count将给出查找要打开的窗口数的答案。

popup = this;count=0;
if(window.top != popup.self)
{
 count=count+1;
 popup = popup.parent;
}