【问题标题】:does opera/IE7+ have support for addClass/removeClass in JQuery?Opera/IE7+ 是否支持 JQuery 中的 addClass/removeClass?
【发布时间】:2011-08-11 15:32:40
【问题描述】:

我有用于模拟按钮的列表标签的 CSS,如下所示:

在调用 addClass 之前(理想情况下,removeClass 应该返回到什么位置)

#content_navigation li {
background-color:#C7C7C7;
border:2px outset black;
text-align:center;
font-weight:400;
}

在 addClass('clicked'); 之后被称为

#content_navigation li.clicked {
background-color:#EFEFEF;
border:1px inset black;
font-weight:700;
}

我的 JQuery 代码(一个按钮):

$('#pass_settings_btn').click(function() {
$('#pass_settings_btn').addClass('clicked');
$('li:not(#pass_settings_btn').removeClass('clicked');

在 Firefox 中,这可以完美运行。但是在 Opera/IE7 中(除了 Firefox 5,我唯一需要测试的),但按钮不会回到原来的状态。调用 removeClass 后,原始 CSS 不会“通过”。我该如何解决这个问题(希望没有特定于浏览器的黑客攻击?)

【问题讨论】:

    标签: jquery internet-explorer opera addclass


    【解决方案1】:

    尝试改变

    $('li:not(#pass_settings_btn').removeClass('clicked');

    $('li:not(#pass_settings_btn)').removeClass('clicked');

    【讨论】:

    • 而且...这是我羞愧地掩饰自己的脸,宁愿抱怨我的 IDE 没有更好的发现语法错误的能力(因为显然我的眼睛错过了它)。非常感谢;效果很好。
    • 除非我真的卡住了,否则我通常不会使用它,但在这种情况下,我检查了我的代码并没有发现问题,所以我想知道它是否是浏览器的问题-相关。
    • 事情很容易被忽略,我们都这样做。通常一天几次。我整天都在我的 jQuery 中使用逗号而不是句号。例如$('input'),val(thiswontwork)
    猜你喜欢
    • 1970-01-01
    • 2013-02-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-07
    • 1970-01-01
    • 2018-03-02
    • 1970-01-01
    相关资源
    最近更新 更多