我有一个从网站S1页面加载P1包含一个iframe。 该iframe装载来自其他网站S2的网页P2。 在一些点P2想关闭浏览器窗口,其中包含P1从S1加载。 当然,由于P2是从其他网站下载,它不能只是做parent.close()。
我有超过P1和P2的完全控制,从而需要,我可以添加JavaScript代码P1和P2。 在建议如何解决这个问题?
我有一个从网站S1页面加载P1包含一个iframe。 该iframe装载来自其他网站S2的网页P2。 在一些点P2想关闭浏览器窗口,其中包含P1从S1加载。 当然,由于P2是从其他网站下载,它不能只是做parent.close()。
我有超过P1和P2的完全控制,从而需要,我可以添加JavaScript代码P1和P2。 在建议如何解决这个问题?
这是不可能的,我很害怕。 JavaScript的从装入到不同的网站,然后它被上,由于安全问题,严禁呈现的一个iframe中。
然而,如果在iframe指向同一个网站,你可以得到它喜欢:
<iframe name = "frame1" src = "http://yoursite">
</iframe>
<script type = "text/javascript">
alert(window.frames["frame1"].document);
</script>
如果它们来自同一个域,您可以修改安全限制,允许子域之间修改。
设置document.domain的= “domain.com”; //在这两个网页,他们被允许修改海誓山盟。
也许工作,只是它们设置为一个假域名,还没有尝试过,或者只是简单的“.COM”什么的。
它看起来像这个家伙了跨域JavaScript的I帧之间的工作。
您可以使用Flash来做到这一点。 向用户发送到您用一个_top目标的URLRequest控制新的顶级页面,并有该页面包含JavaScript,做了window.close()的。