2010-09-30 3 views
0

Как я могу получить доступ к объектам, когда при использовании селекторов возвращаются несколько объектов?Доступ к объектам с использованием индекса в jquery

 $('.copy_anim')[i].css({ 
     'position' : 'relative', 
     'right' : '-30px', 
     'opacity' : '0' 
    }); 

с использованием вышеуказанного кода говорит, что $('.copy_anim')[i].css не является функцией.

ответ

2

Если вы хотите, чтобы объект JQuery (так что вы можете использовать .css()) на элементе в (0 основе) индекса i, используйте .eq() так:

$('.copy_anim').eq(i).css({ 
    'position' : 'relative', 
    'right' : '-30px', 
    'opacity' : '0' 
}); 

Если вы просто хотите запустить его на все элементов, просто сделать:

$('.copy_anim').css({ 
    'position' : 'relative', 
    'right' : '-30px', 
    'opacity' : '0' 
}); 

Это будет работать .css() на все.copy_anim элементы ... это поведение jQuery по умолчанию.

0

Если я хорошо понимаю, вы не знаете $ .each в JQuery ...

$('.copy_anim').each(function(index) { 
    $(this).css({ 
     'position' : 'relative', 
     'right' : '-30px', 
     'opacity' : '0' 
    }); 
    }); 

Является ли это?

+0

И вы можете использовать индекс или все, что вы его назвали, выбрать, какой из них вы хотите изменить, и т. Д. Вот документ: http://api.jquery.com/each/ – Shikiryu

0

Используйте каждый!

$('.copy_anim').each(arr,function(){ 
    $(this).css({ 
    'position' : 'relative', 
    'right' : '-30px', 
    'opacity' : '0' 
    }); 
});