Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Не получается выбрать нечетные элементы

CoderMotive Ученик (41), закрыт 3 года назад
Код jQuery:
$('#osnova').children(':odd').each(function(){
while(true){
$(this).animate({marginTop: '+=1'}, 20);
}
})

css:
div{
display:inline-block;
}

html:

Лучший ответ
Константин Ефименко Гуру (3721) 3 года назад
Как то так:

var child = $('#osnova').children(),
flt = child.filter(":even");
flt.each(function()
{
$(this).animate({marginTop: '+=100' }, 320);
});

https://jsfiddle.net/L7k9328x/

Я использовал :even, так как вы сказали "нечетные элементы", а в JS счёт начинается с нуля, получается что, :odd вопреки описанию отбирает только чётные (2,4,6 и т. д.).
Остальные ответы
Elepsis Eclipse Гений (64070) 3 года назад
$('#osnova div:nth-child(2n - 1)').each(function() {
//
});

while true - хреновая ошибка. Даже если анимация завершится, цикл будет продолжать бегать.
Саня Семенов Оракул (60425) 3 года назад
запомни это уже: никогда не пиши конструкцию
while(true) {
до тех пор пока не выучишь оператор выхода из цикла
Похожие вопросы