【发布时间】:2011-09-25 14:47:12
【问题描述】:
基本上我有一个页面启动了一个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;
这是var jQuery = function( selector, context ) { 的最后几行。
如果我在兼容性视图中没有问题,在任何其他浏览器中都没有问题,只是 Internet Explorer 9 模式下的 Internet Explorer 9 和 Internet Explorer 9 标准。如果我忽略该错误,我认为使用任何版本的 jQuery 都没有问题。
发生了什么事,我可以做些什么来解决?
【问题讨论】:
-
更新jQuery到最新版本
-
将 jquery 更新到 1.6.1,现在错误出现在第 81 行,但代码相同
toString = Object.prototype.toString。 -
直接打开iframe的内容会出现这种情况吗?也就是说,如果你只是自己打开 iframe 页面?
-
@jimbojw:不,先生,iframe 中的代码如果加载到它自己的窗口中,则运行不会出错。
-
我很好奇 iframe 是在设置 src 属性之前还是之后创建的。如果创建了 iframe,并且 /then/ 设置了 src 属性,则可能会出现问题。 (而不是构建一个包含 的 HTML 字符串并将其全部注入到具有 innerHTML 的元素中)。
标签: javascript jquery internet-explorer internet-explorer-9