javascript - 访问 IFrame 的父 URL

标签 javascript html url iframe parent

Possible Duplicate:
access parent url from iframe

我一直在四处寻找,但找不到对此的固定答案或解决方案。 我有2个网站,www2.domain.netwww3.domain.net这两个网站都有一个 iFrame,链接到 www.domain.co.uk/iframe.html

我想要做的是检查父 URL,即用户是否正在访问 www2.domain.netwww3.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/

相关文章:

javascript - Uncaught Error : INVALID_CHARACTER_ERR: DOM Exception 5

javascript - img 302 重定向时是否会调用 'load' 事件?如何对此进行测试?

html - Discord 如何嵌入 YouTube 可播放视频?

android - Android 4.4 KitKat 上的 shouldInterceptRequest

php - 如何使用python/PHP去除URL链接中的冗余?

javascript - #js中URL地址中的变量

javascript - AngularJS - 验证元素绑定(bind)上的可用电子邮件

javascript - jQuery 滞后于验证事件

javascript - 使用javascript继承

javascript - 使用 Javascript 在选择中查找换行符?