我有一个加载用户请求的iframe。但是,我需要确保iframe不会加载自身,而是重定向到默认站点。
该过程必须是动态的,并且可以在任何页面上工作,因为我有多个页面这样做,并且每个站点的自定义代码都不实用。
答案 0 :(得分:0)
只要您与父母在同一个域中,就可以使用parent
。添加到包含iframe的文档:
$(function() {
// Check if you are in an iframe, otherwise parent == self,
// and the next check will always return true.
function inIframe () {
try {
return window.self !== window.top;
} catch (e) {
return true;
}
}
// Check if parent.url == self.url.
function sameAsParent() {
try {
return parent.window.document.location.toString() === window.document.location.toString());
} catch (e) {
return false;
}
}
if (inIframe() && sameAsParent()) {
// You are being loaded by yourself! Redirect!
window.location.href = 'http://some-redirect-url.com'
}
});