【发布时间】:2014-06-23 21:45:25
【问题描述】:
我有一个父 html 页面,它使用 jquery 将具有源的动态 iframe 附加到另一个域。我已经设置了 X-Frame-Options 以允许这样做,并且加载纯内容不是问题。事实上,我所有的其他脚本似乎都运行良好。
在 iFrame 中加载的 html 页面使用 jQuery DirtyForms plugin,其中有几行类似于 $(document)。脏表单代码和 jQuery 脚本都是 iframe 文档的本地代码。
当执行这些行中的任何一行时,我在 Firefox 中收到以下错误(我尚未测试任何其他浏览器),错误:访问属性“文档”的权限被拒绝。
我一直在阅读这方面的内容,如果父页面试图访问孩子的脚本或反之亦然,这似乎是一个问题,但在我的情况下,出错的脚本是孩子本地的。
顺便说一句。子代码,当未在 iFrame 中加载时,可以完美运行。
我现在找不到解决方法。
我假设 $(document) 以某种方式被评估为父级。
有什么方法可以纠正这种行为吗?也许通过修改插件代码。也许,$(document).find('contentWindow')...??
感谢您的帮助!谢谢。
【问题讨论】:
-
如果“正在执行的代码在 iFrame 中并且仅与 iFrame 相关”,您为什么需要访问
contentWindow?
标签: jquery iframe cross-domain jquery-dirtyforms