首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用window.opener的IE中的JavaScript问题

使用window.opener的IE中的JavaScript问题
EN

Stack Overflow用户
提问于 2011-10-04 20:56:10
回答 3查看 17.5K关注 0票数 1

我正在尝试使用以下JavaScript检查弹出页面是否仍处于打开状态。

父页面(调用页面以打开弹出窗口)已打开,但此代码仍然失败。我从一个aspx弹出页面调用它,该弹出页面在另一个母版页中有一个母版页。因此,最终调用此脚本的click事件是Gridview中内容占位符中的Edit Link,该占位符位于最上面的母版页内容占位符中,不确定这是否与其有关。该脚本将触发,但它不会看到父页面处于打开状态且未关闭。

代码语言:javascript
运行
复制
if (window.opener != null && !window.opener.closed) { 
    alert(window.opener); 
    var val = window.opener.parentFunc(a); 
    alert(a); 
} 

这是IE独有的问题,火狐可以识别window.opener页面。尝试了IE的多个版本都有问题,虽然Firefox和Opera可以工作。

我实际上使用了这个警告语句...

代码语言:javascript
运行
复制
alert(window.opener);

在IE中返回未定义。

在火狐中返回ObjectWindow。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-10-06 20:55:48

我像这样从VB.net发送脚本,让它正常工作……

代码语言:javascript
运行
复制
Dim BrowserSettings As String = "status=no,toolbar=no, scrollbars =yes,menubar=no,location=no,resizable=no," & "titlebar=no, addressbar=no, width=650 ,height=800"
Dim URL As String = "testNewPage.aspx"
Dim scriptText1 As String = ("<script>javascript: var w = window.open('" & URL & "','_blank','" & BrowserSettings & "'); </script>")
ScriptManager.RegisterStartupScript(Me, GetType(Page), "ClientScript1", scriptText1, False)here

这不完全是我想要的,但它似乎可以工作,除了现在弹出页面不在顶部。需要弄清楚这部分。

我一直在尝试应用焦点,但似乎不起作用。此外,我尝试了一个非模态弹出窗口,它可以工作,但我失去了对打开的窗口的引用。

票数 0
EN

Stack Overflow用户

发布于 2011-10-04 21:08:30

我相信这是IE的安全限制。看看这个帖子,看看它是否回答了你的问题:

http://social.msdn.microsoft.com/Forums/en/iewebdevelopment/thread/0c014e78-8d35-4df3-93da-7f6a30b4ed8b

票数 0
EN

Stack Overflow用户

发布于 2017-05-12 13:57:38

代码语言:javascript
运行
复制
function getParentWindow(){
    var father = window.opener;
    if(father == undefined) {
       father=window.dialogArguments
    }

    return father;  
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7648231

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档