function fix_menu_width(root, no_edge_padding){ var r_width = root.offsetWidth; var total_link_width = 0; root.items.each(function(item){ total_link_width += item.link.offsetWidth; }); var free_space = (r_width - total_link_width); var len = root.items.length * 2; if(no_edge_padding){ len -= 2; } var pad_val = Math.floor(free_space / len); var pad_rest = free_space % len; if(pad_val && pad_val > 0){ root.items.each(function(item){ if(no_edge_padding){ if(item != root.items[0]){ item.style.paddingLeft = pad_val + "px"; } if(item != root.items.last()){ item.style.paddingRight = pad_val + "px"; } }else{ item.style.paddingRight = pad_val + "px"; item.style.paddingLeft = pad_val + "px"; } }); } } function menu_fixer(root, el_tag, el_class, no_edge_padding){ var ie = !window.getComputedStyle; var items; if(!el_tag){ el_tag = ""; } if(el_class){ items = $C(el_class, root, el_tag); }else{ items = $T(el_tag, root); } if(!items){ return false; } items.each(function(item){ item.link = $T("A", item)[0]; }); root.items = items; if(!ie){ fix_else(root); } fix_menu_width(root, no_edge_padding); window.onresize = function(){ fix_menu_width(root, no_edge_padding) } } function fix_else(root){ var last = root.items.last(); last.style.position = "absolute"; last.style.right = "0"; last.style.top = "0"; }