Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/03/2010, 22:58
MadDunDee
 
Fecha de Ingreso: octubre-2006
Mensajes: 199
Antigüedad: 18 años
Puntos: 3
Sintaxis correcta en jQuery

Hola!!

necesito saber si me podéis echar un cable con una duda que tengo acerca de la sintaxis correcta de este pequeño código en jQuery.

Código PHP:
$(document).ready(function(){

$(
'li#item1 span.hidden').hide();
$(
'li#item2 span.hidden').hide();
$(
'li#item3 span.hidden').hide();
$(
'li#item4 span.hidden').hide();
$(
'li#itemN span.hidden').hide();

$(
'li#item1').mouseenter(function(){
$(
'li#item1 span.hidden').fadeIn('fast');
$(
'li#item1').addClass(change-back);
});

$(
'li#item2').mouseenter(function(){
$(
'li#item2 span.hidden').fadeIn('fast');
$(
'li#item2').addClass(change-back);
});

$(
'li#item1').mouseleave(function(){
$(
'li#item1 span.hidden').fadeOut('fast');
$(
'li#item1').removeClass(change-back);
})

$(
'li#item2').mouseleave(function(){
$(
'li#item2 span.hidden').fadeOut('fast');
$(
'li#item2').removeClass(change-back);
})

$(
'li#item3').mouseleave(function(){
$(
'li#item3 span.hidden').fadeOut('fast');
$(
'li#item3').removeClass(change-back);
})

$(
'li#itemN').mouseleave(function(){
$(
'li#itemN span.hidden').fadeOut('fast');
$(
'li#itemN').removeClass(change-back);
})

}); 
Como podéis ver se trata de una repetición de funciones para distintos elementos que se tiene que comportar de la misma manera. Imagino que debe de haber alguna forma de agrupar esto para no repetir cada sentencia por cada elemento. Un bucle tipo for o alguna manera más correcta de escribir el código. Además, el addClass y removeClass no me funcionan y no sé por qué.

Espero podáis perdonar tanta ignorancia!

Un abrazo y muchas gracias!!