检测Java中嵌入的iFrame

我有一个具有特定页面的应用程序-我们将其称为页面A。页面A有时是顶层页面,但有时也作为iframe嵌入到页面B中。所有页面都来自同一服务器,并且没有跨域问题。


我有一个运行在页面A上的润滑脂脚本。润滑脂脚本如何检测页面A是否在iframe上下文中?


临摹微笑
浏览 417回答 4
4回答

largeQ

谓词(window.parent.frames.length > 0)会告诉您您想要的。

qq_花开花谢_0

如上所述,公认的解决方案在IE8中不起作用。此外,检查window.parent.frames.length可能会导致跨域异常。取而代之的是,我可以通过var isInIFrame = top.location != self.locationIE8 实现此功能,它可以在IE8中使用,并且只要您不尝试读取的内容,就不会引起跨域冲突top.location。

波斯汪

使用window.frameElement并检查它是否不为null以及其nodeName是否为“ IFRAME”。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript