Foros del Web » Programando para Internet » Javascript » Frameworks JS »

problema toggleClass Jquery

Estas en el tema de problema toggleClass Jquery en el foro de Frameworks JS en Foros del Web. Hola a todos @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código Javascript : Ver original $ ( function ( ) {       $ ( 'li' ) . click ...
  #1 (permalink)  
Antiguo 27/03/2014, 12:24
Avatar de eduardobrutaldeath  
Fecha de Ingreso: agosto-2013
Ubicación: América
Mensajes: 306
Antigüedad: 11 años, 3 meses
Puntos: 3
problema toggleClass Jquery

Hola a todos

Código Javascript:
Ver original
  1. $(function(){
  2.  
  3.     $('li').click(function(){
  4.         $(this).toggleClass('liback');
  5.  
  6.         $('.liback').css('background', '#000');
  7.     });
  8.  
  9. });

Lo que he hecho ha sido crear unas listas, y cada vez que se pinche en ellas el fondo cambiará a negro. El TOGGLE lo que hace es agregar una clase en caso el elemento no la tenga y quitarla en caso la tenga. Mi código funciona bien hasta aquí:

Cuando doy click a un elemento 'LI' se crea una clase

Luego se pinta de negro

Y si vuelvo a hacer click se quita el CLASS pero, el fondo no regresa a blanco...


Y es extraño porque, al hacer click nuevamente en las listas se quitan las clases (lo veo en la consola), y al irse se deberían quitar también los estilos, pero no sé por qué no pasa... ¿alguien me entiende?
  #2 (permalink)  
Antiguo 28/03/2014, 15:13
 
Fecha de Ingreso: septiembre-2006
Mensajes: 139
Antigüedad: 18 años, 2 meses
Puntos: 14
Respuesta: problema toggleClass Jquery

Buenas tardes Eduardobrutaldeath,

Yo lo que haría sería disponer de las clases CSS en un fichero .css y usar toggleClass desde javascript con JQuery. Ten en cuenta que toggleClass lo que hace es habilitar si no está habilitada la clase para el elemento del DOM seleccionado, y si está elimina del atributo class.

Saludos cordiales.
Francisco J.

Etiquetas: funcion, jquery
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 09:10.