来自 Apple开发人员常见问题解答
Safari 附带了一个保守的 cookie 策略,该策略将 cookie 写入仅限于用户选择(“导航到”)的页面。
默认情况下,Safari 仅允许来自您直接导航到的站点的 cookie。(即,如果您单击带有该域名 url 的链接)。
这意味着,如果您使用 iFrame 从您自己的站点加载一个页面,该页面来自另一个站点的页面,则另一个站点无法设置 cookie。(例如,售票处)。一旦您直接访问了其他域,其他站点就能够访问和更改其自己的 cookie。
如果无法访问其他站点上的代码,我如何才能使用户体验尽可能不显眼?
是否有(javascript?)方法来检查是否已设置其他站点的 cookie,并相应地,如果需要,首先显示指向其他站点的直接链接?
更新:
HTML5 功能“window.postmessage”似乎是一个不错的解决方案。
有一些 jQuery 库可能会有所帮助,并且与最新的浏览器兼容。
本质上,iFrame 文档使用 Json 通过 window 元素发送消息。
非常好的Postmessage-plugin,由 daepark 提供,我开始工作了。
和另一个jQuery postMessage,我发现了 Ben Alman,但尚未测试。