Bueno, he encontrado otro método (lo llamaremos "ascensor") que me parece más elegante; seguro que hay otra manera pero
Código Javascript
:
Ver original$('.menuprincipal a').click(function(){
var indice=$(this).parents('.menuprincipal').children().children().children().index(this);
});
funciona perfectamente. No he dado antes con esto porque parece ser que "children" no trabaja igual que "parents", sino que sólo busca el nivel justo por debajo, con lo que hay que saber cuantos elementos tenemos entre el enlace y el menu (en este caso 3);
¡pero ya sólo ocupo una línea! con lo cual me quedo satisfecho.
Gracias de nuevo!