如果网站在框架/ iframe内,则document.referer将始终包含一个值

Will document.referer always contain a value if a website is within a frame / iframe?

本文关键字:referer 包含一 document 框架 网站 iframe 如果      更新时间:2023-09-26

我知道有很多方法可以检查网站是否在框架/iframe内,例如:

if (window !== window.parent)
if (window.self !== window.top)

但是还有一种方法可以获取父框架/iframe的URL:

document.referer

我只是想知道这个值(document.referer)是否总是包含父框架的URL?

即使正在使用框架,是否有任何时间它也会是空白的?

基本上,我想知道检查document.referer的值是否是查看网站是否在框架内的可靠方法。

谢谢。

实际上有一种简单的方法可以从嵌入式页面隐藏引荐来源网址,只需将其添加到父页面即可

<meta name="referrer" content="no-referrer" />

有关该功能的浏览器支持详细信息,请参阅此处

根据我的经验,是的,它应该始终包含包含 iframe 的文档。如果没有,有人请告诉我们,但可以肯定地说,如果你有一个iframe document.referrer会给出包含文档的URL