2012-06-23 3 views
1

Как я могу создать цикл и добавить некоторые значения для следующей итерации вместе, как в jQuery?вычисление jQuery внутри цикла

var currLength = length; 
for (var i = 1; i < dotCount -1; i++) { 
    $("#myElement" + i).css("width", currLength); 
    currLength += length + margin; 
} 

Edit: Это просто пример. Я просто хотел знать, как использовать функцию .each jQuery, потому что у меня было несколько разных идей использования. Я не делает никакой разницы в отношении к петле для

+0

Вы уверены, что хотите делать '+ ='? –

+1

Это то, что делает ваш код, хотя вы пропускаете последний 'dotCount', и вы всегда удваиваете' currLength' перед добавлением «margin». –

+0

@Cole Johnson @ я не извиняюсь, исправляю это, я добавляю длину в currLength –

ответ

1

это не должно быть:

var currLength = length; 
for (var i = 1; i < dotCount -1; i++) { 
    $("#myElement" + i).css("width", currLength); 
    currLength += margin; 
} 

currLength устанавливается на длину уже, верно?

0

Это конкретный сценарий, как я в конечном итоге. Просто нужна идея .each, потому что я думал, что есть способ объединить эти петли вместе.

 var bCurrLeft = left; 
     $(this.backgroundElements).each(function() 
     { 
      $(this).animate(
       { 
        left: bCurrLeft, 
        top: top 
       }, moveSpeed); 
      bCurrLeft += singleWidth + singleMargin; 
     }); 
     var fCurrLeft = left; 
     $(this.foregroundElements).each(function() 
     { 
      $(this).animate(
       { 
        left: fCurrLeft, 
        top: top 
       }, moveSpeed); 
      fCurrLeft += singleWidth + singleMargin; 
     }); 

     $(this.allElements).promise().done(callback); 
Смежные вопросы