IE9中使用IE7模式的.removeClass和.addClass行为怪异

时间:2011-03-21 14:17:10

标签: jquery

我有这个片段,它删除并添加了类。它适用于所有浏览器,但如果你在IE9上设置IE7模式,图像(checkimage)会在添加/删除类动作时开始闪烁或消失。这是一个片段:

_clearAndSetPrimary: function (row) {

    $j('#leademails tr.wasprimary').removeClass('wasprimary');

    $j('#leademails tr.isprimary').removeClass('isprimary').addClass('wasprimary');
    $j('#leademails tr.wasprimary td.primary').html('<a title="make this the login email" href="#makeprimary">make primary</a>');

    row.addClass('isprimary');
    $j('#leademails tr.isprimary td.primary').html(checkimage)

}

更新:那是IE9 RC版本的bug。安装稳定的IE9并且问题自行解决..

2 个答案:

答案 0 :(得分:1)

不知道该说些什么 - 我昨天读到的另一个问题报告的内容与IE使用add / remove / toggleClass时的行为类似。您是否尝试过普通的.setAttribute() / .attr()

答案 1 :(得分:1)

这绝对是真的。执行删除后,我必须检查类名,并添加额外的类,如果它们已被删除。

Javascript也正常使用$('#nodeID')爆炸。位置() - 没有优雅失败,没有消息,null或未定义,只是函数死亡,所以我不得不尝试捕获它。很高兴知道如果出于一些非常随机的原因你必须在IE 9中支持IE7模式,那么jQuery将会“吓坏”。