Possible Duplicate:
access parent url from iframe
我一直在四处寻找,但找不到对此的固定答案或解决方案。
我有2个网站,www2.domain.net
和www3.domain.net
这两个网站都有一个 iFrame,链接到 www.domain.co.uk/iframe.html
我想要做的是检查父 URL,即用户是否正在访问 www2.domain.net
或www3.domain.net
这样我就可以向访问 www3.domain.net
的人显示特定信息.
这可能吗?
谢谢, 安德鲁
最佳答案
这是可能的,但不是很简单,并且需要您控制所涉及的所有三个页面。
如果您确实控制了所有三个站点,则会出现跨窗口消息传递,由 window.postMessage()
提供。然而,它是 DOM 的(相对)新添加,并且在 IE 7、IE 6、Safari 4、Firefox 2 和 Opera 9 等旧版浏览器中不受支持。
// Parent:
iframeWin.postMessage("Hello, from "+window.location.host);
// Iframe:
window.onmessage = function (evt) { alert(evt.origin); }
另一种选择是通过 URL 传递域,然后在另一端解析它:
<iframe src="www.domain.co.uk/iframe.html?www2.domain.net" />
以及所需的 JavaScript(从 iframe 内的页面调用):
alert(window.location.search);
//-> "?www2.domain.net"
关于javascript - 访问 IFrame 的父 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7574926/