Should I keep the division by 10 on the Math function?
On Mar 3, 10:08 am, brian <bally.z...@gmail.com> wrote: > The division by 10 is your problem. Try: > > $(this).addClass(classNames[(i + 3) % 3]); > > On Tue, Mar 3, 2009 at 2:21 AM, Nic Hubbard <nnhubb...@gmail.com> wrote: > > > I have a list of names wrapped in <p> tags that are sorted in > > alphabetical order. I am trying to build 3 even columns out of > > these. There are 63 items, so each column should have 21 items. I > > have a script that kind of works, but it is making my items out of > > order, as it is somehow grouping them in a strange way. > > > var classNames = ['first', 'second', 'third']; > > $('#artistsColumns p').each(function(i){ > > var n = Math.floor(i/10) % 3; > > $(this).addClass(classNames[n]); > > }); > > > // Now lets wrap those in some divs > > $('p.first').wrapAll('<div class="colFirst"></div>'); > > $('p.second').wrapAll('<div class="colSecond"></div>'); > > $('p.third').wrapAll('<div class="colThird"></div>'); > > > Basically each group of classes get wrapped with a "column" div, but, > > once of the columns is getting too many times and the items are > > getting the wrong classes. > > > Also, how can I write this so that I can continue to add new items and > > it will keep my columns as even as possible?