The following code works, but I’m sure there is a more compact way to achieve the same result, particularly the string replacement:
$('#nav-main .nav-sub').each(function() { var name = $(this).attr('id'); $(this).children('li').children('a').each(function() { var text = $(this).text().toLowerCase(); var spaces = / /g; var sub = /sub-/; var id = name + '-' + text.replace(spaces, '-'); var id = id.replace(sub, ''); $(this).attr('id', id); }); });
1 Answer