Foros del Web » Programando para Internet » Jquery »

Cambiar class de li con jQuery

Estas en el tema de Cambiar class de li con jQuery en el foro de Jquery en Foros del Web. Hola, tengo un problema, yo cambio el class de un li con jquery, pero despues si lo cambio de nuevo quiero que el viejo pierda ...
  #1 (permalink)  
Antiguo 02/09/2012, 16:19
Avatar de ONahuelO  
Fecha de Ingreso: junio-2009
Ubicación: Gualeguaychú, Argentina
Mensajes: 144
Antigüedad: 15 años, 5 meses
Puntos: 4
Cambiar class de li con jQuery

Hola, tengo un problema, yo cambio el class de un li con jquery, pero despues si lo cambio de nuevo quiero que el viejo pierda el class que le di anteriormente.


Aver si me explico mejor, yo tengo un menu hecho con jquery, al seleccionar un item, este cambia de class y recarga una ventana.
Lo que necesito es que al volver a seleccionar otro item, este cambien el class pero el anterior lo pierda.

Codigo:
Código Javascript:
Ver original
  1. $("#ctg1").attr("class",'active');


Osea, seria muy facil revertir el mismo codigo, pero la idea es que yo no se que item fue seleccionado anteriormente, entonces no podria hacer:

Código Javascript:
Ver original
  1. $("#ctg1").attr("class",'inactive');
  2. $("#ctg2").attr("class",'active');

Creo que la unica forma que encuentro es recorrer esa lista, cambiar todas las class a inactive y poner active la que deseo, pero nose como se hace eso.
  #2 (permalink)  
Antiguo 03/09/2012, 01:27
Avatar de YYs86  
Fecha de Ingreso: abril-2012
Ubicación: Salamanca
Mensajes: 136
Antigüedad: 12 años, 7 meses
Puntos: 14
Respuesta: Cambiar class de li con jQuery

Puedes probar realizando un simple $.addClass() y $.removeClass(), con lo que solo tendrías que usar una etiqueta de clase "active", que sería la que pongas y quites de tu "li".

Si usas la función $.toggle() conseguirás el efecto que quieres de forma sencilla y más eficiente.
__________________
Web developer:

http://xtremgaming.es
http://leaderleague.com

Etiquetas: class
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:52.