取得 iframe 容器的 URL
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了取得 iframe 容器的 URL相关的知识,希望对你有一定的参考价值。
检测所在窗口是否为最外层的窗口,若不是则跳脱包含它的框架
if( window !== window.top ) {
window.top.location = location;
}
top 对象指向最外层,浏览器窗口本身,self 总是等于window
当Iframe page和 containing page 来自同源时,parent.location or top.location可以获取containing 页的地址
参考
Getting the URL of an iframe’s parenthttp://www.nczonline.net/blog/2013/04/16/getting-the-url-of-an-iframes-parent/
不同源的话
来自另一个域名iframe 里面的内容不能被容器页面的javascript 操作读取,iframe也不能操作容器页面
the HTTPReferer header for a page inside of an iframe is always set to the containing page’s URL
function getParentUrl() {
var isInIframe = (parent !== window), //检测是否该页面是否在iframe中
parentUrl = null;
if (isInIframe) {
parentUrl = document.referrer;
}
return parentUrl;
}
以上是关于取得 iframe 容器的 URL的主要内容,如果未能解决你的问题,请参考以下文章
当 URL 包含片段时,iframe 会导致父元素在 Google Chrome 上向上滚动