Итак, у вас есть древовидное представление, а у тех, у кого есть список, есть класс с именем parent.
Я не проверял это (и я не знаю, есть ли в jQuery что-то встроенное для этого), но вы можете попробовать что-то вроде:
$(document).ready(function(){
$('.navigation').find('li.parent > ul > li').addClass('nivel_X');
$('.nivel_X').each(function(){
var level = $(this).parents('.parent').size();
$(this).removeClass('nivel_X').addClass('nivel_'+level);
});
});
Идея состоит в том, что вы добавите класс к каждому непосредственному потомку li с помощью класса "parent", а затем назовете этот класс nivel_X, где X заменяется числом родителей, которое он находит выше ...
Следующий код тоже работает, и он мне больше нравится:
$('.navigation').find('li.parent > ul > li').addClass(function() {
return 'nivel_'+$(this).parents('.parent').size();
});