我在ASP.NET中使用iframe的网站非常完整.我正在努力改变我们用来显示对话框以使用jQuery UI对话框的旧控件.我也确保在IE9中一切正常.
事实是:我在iframe中显示的页面中的脚本在IE9中不起作用.为什么?因为Object,Array和String是未定义的.可能还有其他一些问题,我只看过这些问题.
没有机会(因为很多原因)在某些对话框上停止使用iframe.而且我宁愿不使用meta标签强制IE8 Compability.有谁知道在IE9中修复这个uggly错误的方法吗?
谢谢,迭戈
编辑
这里有一些信息可能是helfull:
我用来配置jQuery UI对话框的插件中iframe的jQuery代码:
options.content = $("<iframe>")
.attr("src", options.intSrcIframe)
.attr("frameborder", 0)
.attr("scrolling", options.intIframeScrolling)
.css("background-color", options.intBgColorIframe)
.attr("height", "100%")
.attr("width", "100%");
_this.html(options.content);
Run Code Online (Sandbox Code Playgroud) javascript asp.net iframe internet-explorer internet-explorer-9
基本上我有一个页面启动了一个fancybox iframe.在那个iframe我也包含了jQuery.但是,当我在Internet Explorer 9中测试它时,它给了我错误
行:68 \n错误:'对象'未定义
此错误在文件中jquery-1.4.1.js,有问题的行是第二行:
// Save a reference to some core methods
toString = Object.prototype.toString,
hasOwnProperty = Object.prototype.hasOwnProperty,
push = Array.prototype.push,
slice = Array.prototype.slice,
indexOf = Array.prototype.indexOf;
Run Code Online (Sandbox Code Playgroud)
这是最后一行var jQuery = function( selector, context ) {.
如果我在兼容性视图中没问题,在任何其他浏览器中都没有问题,只有Internet Explorer 9在Internet Explorer 9模式和Internet Explorer 9标准中.如果我忽略错误,我发现使用任何版本的jQuery都没有问题.
怎么了,我能做些什么来解决?