这个 window.top 在我的脚本中执行什么?这是帧检查



你好,我在下面有这个脚本,我对执行这个脚本的任务有点困惑......这个脚本是我从我正在处理的一个项目中截取的。所以如果你们能帮忙理解一下,或者让我上路......下面是脚本

if (window.top !== window.self) window.top.location = window.self.location.href;

提前致谢

这是常见的代码,检查页面是否加载在 iframe 中,如果是,它会从 iframe 中弹出。


window.top代表"最顶层的窗口",即您在地址栏中看到的 URL。

window.self表示运行当前脚本的窗口。

该脚本说,如果最顶层的窗口不是运行此脚本的窗口,则将顶部脚本的 URL 更改为运行此代码的脚本的 URL。

(window.top !== window.self( 如果我们在 iframe 中执行,我们通常会使用这类检查。window.self 表示我们正在执行的窗口(当前帧(,window.top 是指最外层的帧。

想象一下你的脚本在 iFrame 中运行。

在此方案中,window.top是指父窗口。

window.top !== window.self测试脚本是否在 iFrame 中运行

如果是这样,window.top.location = window.self.location.href;确保父窗口将采用与 iFrame 中运行的窗口相同的 URL。

这是一种安全检查,以确保您的脚本始终在最顶层的窗口中运行。

最新更新