【问题标题】:cross domain ajax iframe javascript issue跨域ajax iframe javascript问题
【发布时间】:2011-05-11 20:55:01
【问题描述】:

我在域 A 中创建了一个 iframe,并通过 AJAX 调用它在我的另一个域域 B 中使用了该 iframe。我还使用history.go(-1) 在域 A 的 iframe 中为我的应用程序实现了一个 javascript 后退按钮。

当我现在使用 IE、Firefox、Chrome 查看我的页面时,一切正常,但 javascript 后退按钮不适用于 Safari。似乎它调用的是窗口而不是 iframe。

我创建了一个隐藏的 iframe(认为这是一个跨域问题)并且没有运气。之后,我在我的框架中创建了一个主页按钮,它将我带到原始 url 源,我的后退按钮开始在域 B 中工作(可能 iframe 源已更改)。

有什么问题?有什么想法吗?

【问题讨论】:

    标签: javascript ajax safari cross-domain mobile-safari


    【解决方案1】:

    我过去实现这样的方式是:

    • 域 A 创建一个隐藏的 iframe,用于打开域 B 上的页面。
    • 域 B 收集需要发回的信息,然后重定向到域 A 上专门准备的页面。使用 GET 数据发送结果。
    • 域 A 中返回的页面将使用 GET 参数创建一个 javascript 块以将消息推送到原始页面(使用 window.parent 或 window.top)

    此方法当然假设您可以在两端操作客户端实现,并在域 B 一侧操作服务器实现。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-03-12
      • 2012-12-11
      • 2011-02-18
      相关资源
      最近更新 更多