Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript window.parent变量从不为null_Javascript_Html_Iframe_Cross Domain - Fatal编程技术网

Javascript window.parent变量从不为null

Javascript window.parent变量从不为null,javascript,html,iframe,cross-domain,Javascript,Html,Iframe,Cross Domain,众所周知,window.parent可以帮助人们在使用多个iframe时获取当前窗口的父窗口。但是,应该有一个最外层的窗口,其父窗口为空 我试过家长家长家长家长家长家长。。。当我发现其中一个父窗口为空时,我想我可以得到根窗口。令人惊奇的是,无论我使用了多少个父变量,父变量永远不会为null 我的情况如下 域名为csm.mysite.com的网站1 网站1-1,域名:csmnew.mysite.com Website1-1位于Website1的iframe中(它们不在同一个域中) 同时,在Webs

众所周知,window.parent可以帮助人们在使用多个iframe时获取当前窗口的父窗口。但是,应该有一个最外层的窗口,其父窗口为空

我试过家长家长家长家长家长家长。。。当我发现其中一个父窗口为空时,我想我可以得到根窗口。令人惊奇的是,无论我使用了多少个父变量,父变量永远不会为null

我的情况如下

域名为csm.mysite.com的网站1

网站1-1,域名:csmnew.mysite.com

Website1-1位于Website1的iframe中(它们不在同一个域中)

同时,在Website1-1中,有许多iframe(它们在同一个域中)

我需要为Website1-1设置/获取一个全局变量,所以我使用了top。这真的很有帮助

但是,当Website1-1位于Website1中时,始终会引发错误,因为顶级变量(在Website1-1中)引用到Website1,而该变量对跨域策略无效。但我真正想要的是设置/获取Website1-1的“top”变量

然后我在想我是否可以用父母。父母。父母。。。。获取网站1-1的最外面的窗口,而不是使用top,这会让我获取错误的窗口

回到主题,为什么是家长。家长。家长。。。总是空的吗

顺便问一下,有人知道如何获取“Website1-1”的最外层窗口吗


非常感谢window.parent,如果窗口没有父窗口,则包含对self的引用,这就是它永远不会为空的原因

资料来源:

要查找,可以使用window.frameElement查找最外面的窗口。这与您期望window.parent的工作方式相同:

此处的更多详细信息:

否。如果窗口没有父窗口,则其父属性是对其自身的引用。