未捕获的TypeError:无法读取未定义的属性“addClass”

时间:2014-12-20 18:16:24

标签: javascript

这个字符串有什么问题:items[i].addClass('in');?它杀了我!例如,我在.each();采取了不同的方式,但它仍然失败......

if(layer = 'aboutAuthor') {
    var items = $('.aboutAuthor .item');
    var K = 100; // Коэфициент.
    var t = K * (items.length + 1);
    for (var i = items.length - 1; i >= 0; i--) {
        console.log(items[i]);
        setTimeout(function(){
            items[i].addClass('in');
        }, t);
        t += K;
    }
}

奇怪的是, console.log()按预期显示日志中的每个元素,并且正常。帮助!

1 个答案:

答案 0 :(得分:1)

我试图不要过多地更改代码,但我假设您想要反向更改项目。

if(layer === 'aboutAuthor') {
    var items = $('.aboutAuthor .item');
    var K = 100; // Коэфициент.
    var t = K * (items.length + 1);
    var i = items.length - 1;
    $(items.get().reverse()).each(function() {
        var item = $(this);
            console.log(item);
            setTimeout(function(){
                item.addClass('in');
            }, t);
            t += K;
        }
    });
}