【问题标题】:How to make jQuery compatible with IE inside iframe page?如何使 jQuery 在 iframe 页面中与 IE 兼容?
【发布时间】:2014-06-11 01:19:00
【问题描述】:

我遇到了一个有趣的问题。我正在使用iframe 来显示我的网站页面。我以这种方式加载 jquery:

<script type="text/javascript" src="/js/lib/jquery-1.10.1.min.js"></script>

图书馆就在我所指的地方。但是,当 IE 尝试加载 jQuery 时,我得到了错误:

对象不支持属性或方法“attachEvent”。

我一直在查看this 问题,但是,建议的解决方案对上面显示的错误没有影响。我已经从我的项目中加载了 jQuery,如 html sn-p 所示。我曾尝试下载jquery-1.8.3.js,但在测试时,我遇到了同样的问题。

我在 iframe 中显示的页面在 Chrome 和 FireFox 下完美运行。我的问题是否有解决方案,或者我应该启动 Blair Witch 项目并修改我的代码以使其不包含特定于 jQuery 的部分?

【问题讨论】:

  • 哪个版本的IE?不支持attachEvent的“对象”到底是什么?
  • 我用IE 11测试过。它是jQuery内部的一个对象。
  • jQuery 1.10 在 IE11 中出现了一些问题,请使用 1.11.0 或更新版本。
  • @teemu,这不是一个选择。我不是 IE 用户,但我正在 IE 中测试我的工作。我无法确定谁将成为用户,所以我可以看到两个选项: 1. 我可以尝试破解 jQuery 来修复错误。 2. 我可以重写我在 iframe 源页面上使用的 Javascript 以不使用 jQuery。我想知道是否有一个不太痛苦的解决方案,这就是我问这个问题的原因。
  • 好吧,你可以只修复错误的部分,虽然我不明白,为什么不使用更新版本?在 1.10.1 中搜索 // Set our document(第 1503 行),从第 1513 行开始有一个 if 块,您必须将其替换为版本 1.11.1 中的 if 块(从第 1069 行开始)。

标签: jquery internet-explorer


【解决方案1】:

您的 IE 问题是由 MS 政策引起的,该政策使 IE 更接近标准。其中一部分是从新版本中删除一些遗留功能。例如,条件 cmets 从 IE10 中退出,IE11 不再支持旧的事件处理模型等。

出于某种原因,jquery

【讨论】:

    猜你喜欢
    • 2010-10-21
    • 2015-09-07
    • 2012-05-26
    • 2020-12-10
    • 2015-11-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-29
    相关资源
    最近更新 更多