【问题标题】:Jquery-ui creates unspecified error when loading iFrame in IE9Jquery-ui 在 IE9 中加载 iFrame 时会产生未指定的错误
【发布时间】:2011-10-26 14:47:01
【问题描述】:

我正在 IE9 的 iFrame 中加载最新的 jQuery 和 jQuery-ui。

我收到关于 active = document.activeElement; 的未指定错误。如果我深入研究 jquery-ui 代码并返回 null:

active = null;

这解决了我的问题,因为从 iFrame 中启动时,似乎 document.activeElement 未在 IE9 中设置。

我在其他地方也读过类似的问题:

https://github.com/jquery/jquery-mobile/issues/2064

我真的不想使用 try/catch 来编辑 jquery-ui,但这是一个选项。

这个问题的最佳解决方案是什么?

【问题讨论】:

    标签: jquery iframe internet-explorer-9


    【解决方案1】:

    阅读http://bugs.jquery.com/ticket/13378

    最好的解决方案是将以下脚本放入 iFrame HTML

    /* Bug Fix: IE9 >>> http://bugs.jquery.com/ticket/13378 */
    jQuery(function () { document.documentElement.focus(); });
    

    【讨论】:

    • 我没有IE8了,所以我不能用它测试它,虽然我的建议是调用iFrame的onLoad函数。
    • 不幸的是,我的解决方案涉及将 HTML 添加到框架中,而我真的无法开始将这个脚本注入到其中...对于我的上下文而言绝对不是一个简单的解决方案...我现在想知道使用问题中指定的 active = null 编辑 jquery.ui 本身的最佳解决方案是什么?
    【解决方案2】:

    我相信问题是 IE9 在 iframe 附加到 DOM 之前加载了 iframe 的“src”,然后 jQuery 没有“文档”。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-06-24
      • 2021-06-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-16
      • 1970-01-01
      • 2012-09-04
      相关资源
      最近更新 更多