gpt4 book ai didi

javascript - window.opener 在 firefox 中为 null

转载 作者:搜寻专家 更新时间:2023-11-01 05:02:09 28 4
gpt4 key购买 nike

我有一个打开弹出窗口的页面

openWindow(top, 'prcsTypeSelectionPopup?event=prcsTypeSelection', 'lovWindow', {width:750, height:550}, true, 'dialog', pathCallBack);

弹出窗口有以下代码

function returnSelect()
{
window.document.forms[0].choice_processType.value ;
window.opener.document.forms[0].pevent.value = 'getprocessName';
window.opener.document.forms[0].processName.value='';
for (var i=0; i < document.forms[0].elements.length; i++)
{
if (document.forms[0].elements[i].checked)
{
window.opener.document.forms[0].processName.value=document.forms[0].elements[i].value;
break;
}
}
if(window.opener.document.forms[0].processName.value=='') {
window.opener.document.forms[0].lovProcessType.value = '';
window.opener.document.forms[0].pevent.value = '';
}
window.opener.document.forms[0].submit();
closeConn();
}

function closeConn()
{
self.close();
}

但是当页面在 firefox 中加载时,出现如下错误window.opener 在 returnsselect() 函数的第 2 行为 null

function returnSelect()
{
window.document.forms[0].choice_processType.value ;
--> window.opener.document.forms[0].pevent.value = 'getprocessName';

知道如何克服这个问题

提前致谢...

最佳答案

您从另一个域/子域打开一个窗口。在这种情况下,您无权访问打开目标窗口的父窗口,因为安全权限不允许这样做。

例如,如果您从 site1.com 的页面打开 site2.com 的页面,目标窗口的打开器为 null

如果您从 site1.site.com 的页面打开 site2.site.com 的页面,它也无法访问,因为这是两个不同的网站。

但是,如果您从 site.com 的页面或 subdomain.site.com 的页面site.com 您有访问权限,因为安全权限允许这样做。

注意:“prcsTypeSelectionPopup?event=prcsTypeSelection”可能不正确。改成没有域的根正确路径,例如:

/prcsTypeSelectionPopup?event=prcsTypeSelection

关于javascript - window.opener 在 firefox 中为 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9902677/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com