我正在为基本上功能如下的各个站点构建一个书签:


用户导航到foo.com(我无法控制的外部站点)
用户单击浏览器上的书签,该书签从foo.com中获取一些信息,并将其显示在iframe内的bar.com中的表单上
用户在foo.com内部的bar.com内部提交表单
iframe消失


问题是让iFrame自行删除。由于无法访问另一个域的父域内的函数,因此无法创建自定义函数parent.removeIFrame()甚至不执行window.top.location.reload()。我尝试了许多技术,但是由于跨域脚本编写,所有技术均失败了。

我解决的方法是将top.location.href更改为我在bar.com/back.html上构建的自定义页面,在该页面中所做的只是发送单个“ history.back()”命令以使原始页面上的用户。虽然很有创意,但我认为这不是非常优雅的解决方案。有没有更好的办法?

最佳答案

您可以尝试跨网域消息传递的片段标识符。有一个YUI库:http://www.julienlecomte.net/blog/2007/11/31/

07-24 09:44
查看更多