IE 9投掷“;错误:';jQuery';是未定义的“;从iFrame内启动时
我已经开发了web应用程序A,需要通过IFrame从web应用程序B内部调用它。我被迫这样做,因为应用程序B是第三方,我没有它的源代码 在我开始使用IFrame之前,IE 9中的一切都很好。它给了我一个错误: “jQuery”未定义 这在Firefox或Chrome中不会发生。我已经通过IE的调试器验证了jquery-ui-1.10.3文件正在被拉入IE 9投掷“;错误:';jQuery';是未定义的“;从iFrame内启动时,jquery,internet-explorer,iframe,internet-explorer-9,Jquery,Internet Explorer,Iframe,Internet Explorer 9,我已经开发了web应用程序A,需要通过IFrame从web应用程序B内部调用它。我被迫这样做,因为应用程序B是第三方,我没有它的源代码 在我开始使用IFrame之前,IE 9中的一切都很好。它给了我一个错误: “jQuery”未定义 这在Firefox或Chrome中不会发生。我已经通过IE的调试器验证了jquery-ui-1.10.3文件正在被拉入 如何修复此问题?您可能正在使用jQuery 1.10.1,它有一个影响IE和Opera的bug。该错误导致jquery在与父页面不同的iframe
如何修复此问题?您可能正在使用jQuery 1.10.1,它有一个影响IE和Opera的bug。该错误导致jquery在与父页面不同的iframe中使用时出错。升级到jquery的最新版本(1.10.2或1.11+)将解决此问题 参考: jquery 2.0.2也受到此错误的影响,并在2.0.3中得到修复。问题是IE的“文档模式”设置为IE7标准。我没有意识到IE中有一个“文档模式”,我当然不记得将它从9设置为IE7
无论如何,现在我有一个相关的问题,iFrame没有以正确的高度显示 在IE中使用iFrames确实是一门黑暗的艺术。我猜你遇到了跨域问题。如果你从另一个域调用第三方应用程序,你的jQuery将在你的页面上运行,但我相信它将受到限制,不会影响iframe中的内容。但同样的解决方案在Chrome和Firefox中运行良好(到目前为止)。在我的情况下,恢复到jQuery 1.x就成功了(而不是2.x版本)。我正在使用jquery-2.0.3和jquery-ui-1.10.3,您已经在调试器中验证了jquery 2.0.3正在加载吗?您是否在调试器中看到任何其他错误?