See! I *knew* there was a better way. Thanks for the example - it
works like a charm and I learned a new math function. It did take me a
minute to spot your typo - a comma and period seriously need to be
more than two pixels different:

var to = jQuery('<ul></ul>'),attr({id:list+'-b',class:cssClass})


Thanks much!


On Dec 18, 4:54 pm, Wizzud <[EMAIL PROTECTED]> wrote:
> A possible alternative (untested!) to ponder upon...
>
> function balance(list,cssClass){
>          // new second 'half' of list...
>     var to = jQuery('<ul></ul>'),attr({id:list+'-b',class:cssClass})
>          // original list, with new id and class, and new list placed
> after...
>        , from = jQuery('#'+list).attr({id:list+'-
> a'}).addClass(cssClass).after(to)
>          // list of items...
>        , items = jQuery('li', from)
>        ;
>     // move bottom 'half' of list from from to to...
>     to.append( items.slice(Math.ceil(items.length/2), items.length) );
>
> }
>
> On Dec 18, 5:14 pm, Alex <[EMAIL PROTECTED]> wrote:
>
> > Another patch, as I realized I needed to round the number of list
> > items, otherwise it wouldn't work with uneven lists. Replace
>
> > var itemsLength = items.length/2;
>
> > with
>
> > var itemsLength = Math.round(items.length/2);

Reply via email to