jquery addClass不工作:“不支持属性或方法addClass”

时间:2012-04-27 10:59:15

标签: jquery jquery-selectors addclass

我有这个javascript工作

$(".mail-tile").click(function () {
    var idMessage = $(this).attr('data-message-id');
    $('.mail-tile').removeClass(classeEvidenzaRigaSelezionata);
    $(this).addClass(classeEvidenzaRigaSelezionata);
    previewMail(this);        
});

然后,在同一页面,相同的js文件,我有这个javascript:

function selectMail(idMail) {
    var mailTile = $('.mail-tile[data-message-id="' + idMail + '"]')[0];    
    $('.mail-tile').removeClass(classeEvidenzaRigaSelezionata);
    mailTile.addClass(classeEvidenzaRigaSelezionata);
    previewMail(mailTile);
}

在这种情况下,addClass函数不起作用:“不支持属性或方法addClass”。

classeEvidenzaRigaSelezionata是一个全局变量。

我无法理解两个片段之间的区别。在这两种情况下,我都使用了HtmlDivElement(对象不为null)。 这是怎么回事?

1 个答案:

答案 0 :(得分:1)

您需要在ID选择器后删除 [0] 。这不会为您提供jQuery element稍后使用的addClass(classeEvidenzaRigaSelezionata)

请改用:var mailTile = $('.mail-tile[data-message-id="' + idMail + '"]');