【问题标题】:Why isn't jQuery $('.classname') working in IE?为什么 jQuery $('.classname') 在 IE 中不起作用?
【发布时间】:2023-03-29 00:53:01
【问题描述】:

使用有效的 HTML,以下内容会在所有浏览器中按预期找到对象,但在 IE (6 & 7) 中会为 NULL。

$(document).ready(function() {
    alert( '$(.rollover):\n' + $('.rollover'));
});

我尝试将其切换为更简单的东西,例如 $('a'),但我在 IE 中总是得到 NULL。

更新: 通过 W3C 验证器运行页面后(并忽略我的 Firefox 验证器插件告诉我的内容),实际上似乎存在很多验证错误(即使定义了 HTML 4 过渡),我无法轻松修复,所以我的猜测是我的问题的原因。因为在 IE 中尝试一个非常简单的文档可以正常工作。

【问题讨论】:

  • 它适用于我的 jQuery 1.2.6 和 IE 7。也许你需要发布一个完整的源代码示例。

标签: javascript jquery


【解决方案1】:

如果您遇到 $ 冲突,有很多方法可以避免这种情况,如 here 所述。

【讨论】:

  • 我同意,使用jQuery.noConflict();
【解决方案2】:

似乎是 AjaxCFC 的 JavaScript 包含导致了问题,更具体地说,似乎定义了它自己的 $ 的 ajaxCFC util.js。

在 JQuery 库之前移动这些包含解决了我遇到的上述问题。

【讨论】:

    【解决方案3】:

    我认为我们必须查看 HTML。我从来没有遇到过 jQuery/IE 中的类选择问题。您应该为警报中的 jQuery 对象获得 [object Object]。另外,您使用的是旧版本的 jQuery 吗?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多