0

这是我所拥有的:

  • www.mydomain.com/Pagex.html - 在这个页面中,我有一个 iFrame,它的默认 url(src) 是一个外部/不同的域,然后是主机页面 (pagex.html) 的域。
  • iFrame 中加载的代码是带有提交的用户输入表单。
  • 当用户点击提交时,它会记录数据,然后重定向到与托管页面 www.mydomain.com/Pagex.html 相同的 url,但添加了标志 (Pagex.html?xxx=1)... 所以你可以想象一下父页面现在正在自己的 iFrame 中加载自己

我想做什么...

使用我怀疑 JavaScript 能够检测到进入 iFrame 的新 URL 并“然后”做两件事:

  1. 隐藏 iFrame
  2. 在主主机页面上显示/显示一些文本(与 iFrame 所在的位置不同)

    • 我怀疑这将或可以使用DIV,那很好......这是检测到我无法工作的iFrame的更改/不同URL的原始URL。

URL - 加载的主机/主页:www.mydomain.com/Pagex.html - 在 iF​​rame URL/SRC 中硬编码 pagex.html:dev.abcdefg.com/testcode.html - 通过发送到 iFrame 的新 url重定向:www.mydomain.com/Pagex.html?xxx=1

感谢您对此的任何帮助!/谢恩

更新/更多信息

所以在这里“也许”我可以从 iFream 获取一些信息到主机页面的地方......当新的/重定向的 URL 加载时,它带有一个标志“.com/pagex.asp?XXX=1”.. . 所以记住它现在正在加载一个我可以控制 pagex.asp 的页面(是的旧经典 asp,而不是 .HTML)并且来自与主机相同的域,哎呀它是正在加载的主机文件。在 ASP 的代码中,我让它检查 xxx = 1 (request.querystring),然后我可以控制将哪些 HTML 和 JS 发送到 iFrame .. 有没有办法可以使用已经加载的主机页面来寻找某种被推送到 iFrame 的管道的值?

我知道这有点疯狂,iFrame 在提交时加载它自己的主机文件,但我只有这么多的控​​制权......

谢谢

4

1 回答 1

0

问题在于您的 iframe 的域与文档的主页不同。因此,父页面和 iframe 页面几乎无法访问彼此的内容。

您可以做的最好的事情是利用window.postMessage() API。但是,请注意,此 API 并非在所有浏览器中都可用

于 2013-06-26T17:53:14.977 回答