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

Cambiar color de celda

Estas en el tema de Cambiar color de celda en el foro de Frameworks JS en Foros del Web. Hola de nuevo. Quiero que una celda de una tabla cambie de color al hacer click , y al volver hacer click en ella de ...
  #1 (permalink)  
Antiguo 14/10/2010, 07:17
 
Fecha de Ingreso: septiembre-2010
Mensajes: 33
Antigüedad: 14 años, 3 meses
Puntos: 0
Cambiar color de celda

Hola de nuevo. Quiero que una celda de una tabla cambie de color al hacer click , y al volver hacer click en ella de nuevo vuelva al color original. Utilizo jquery:

Código:
<SCRIPT>

$(document).ready(function(){

	$("td").click(function(){
		if($(this).attr("bgcolor")==$(this).attr("#dddddd")){
			$(this).attr("bgcolor","#ff00ff");	}
		else{
			$(this).attr("bgcolor","#dddddd");	}	
	});
});

</SCRIPT>
En el ejemplo algo falla porque solo puedo cambiar el color al hacer click y volverlo a poner con otro click pero ya no me deja mas. ¿Alguien sabria como hacerlo con jquery? Gracias.
  #2 (permalink)  
Antiguo 14/10/2010, 07:25
 
Fecha de Ingreso: enero-2008
Ubicación: Buenos Aires
Mensajes: 305
Antigüedad: 16 años, 11 meses
Puntos: 14
Respuesta: Cambiar color de celda

Código Javascript:
Ver original
  1. $(document).ready(function(){
  2.   $("td").click(function(){    
  3.     if( $(this).attr("bgcolor") == "#dddddd" ){
  4.       $(this).attr("bgcolor","#ff00ff");
  5.     }
  6.     else{
  7.       $(this).attr("bgcolor","#dddddd");   
  8.     }  
  9.   });
  10. });

El error está aquí:
Código Javascript:
Ver original
  1. if( $(this).attr("bgcolor") == $(this).attr("#dddddd") )

Ahí tu IF está comparando si el atributo bgcolor es igual al atributo #dddddd, que obviamente no existe.
  #3 (permalink)  
Antiguo 14/10/2010, 07:37
Avatar de chicohot20  
Fecha de Ingreso: mayo-2009
Mensajes: 388
Antigüedad: 15 años, 6 meses
Puntos: 43
Respuesta: Cambiar color de celda

Prueba con esto:
Código HTML:
Ver original
  1. .color{
  2.         background-color: #ff00ff;
  3. }
  4. <script>   
  5.    $(document).ready(function(){
  6.         $("table.mitabla td").toggle(function(){
  7.           $(this).addClass("color");
  8.         },function(){
  9.           $(this).removeClass("color");
  10.         });
  11.     });
  12.  
  13. <table class="mitabla">
  14.    <tr><td>Celda 1</td></tr>
  15.    <tr><td>Celda 2</td></tr>
  #4 (permalink)  
Antiguo 14/10/2010, 08:06
 
Fecha de Ingreso: enero-2008
Ubicación: Buenos Aires
Mensajes: 305
Antigüedad: 16 años, 11 meses
Puntos: 14
Respuesta: Cambiar color de celda

Chicohot20, para hacer el toogle de una clase, tienes el método toggleClass. De manera que lo que tu pusiste se puede simplificar:
Código Javascript:
Ver original
  1. <html>
  2.     <head>
  3.         <style type="text/css">
  4.             .color{
  5.                 background-color: #ff00ff;
  6.             }
  7.         </style>
  8.         <script type="text/javascript">
  9.             $(document).ready(function(){
  10.                 $("table.mitabla td").click(function(){
  11.                     $(this).toggleClass("color");
  12.                 });
  13.             });
  14.         </script>
  15.     </head>
  16.     <body>
  17.         <table class="mitabla">
  18.             <tr><td>Celda 1</td></tr>
  19.             <tr><td>Celda 2</td></tr>
  20.         </table>
  21.     </body>
  22. </html>
  #5 (permalink)  
Antiguo 14/10/2010, 08:50
Avatar de chicohot20  
Fecha de Ingreso: mayo-2009
Mensajes: 388
Antigüedad: 15 años, 6 meses
Puntos: 43
Respuesta: Cambiar color de celda

buen aporte kokoou tengo que leer más jejeje.
  #6 (permalink)  
Antiguo 14/10/2010, 08:53
 
Fecha de Ingreso: septiembre-2010
Mensajes: 33
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: Cambiar color de celda

Perfecto. Muchas gracias
  #7 (permalink)  
Antiguo 15/10/2010, 05:39
 
Fecha de Ingreso: enero-2008
Ubicación: Buenos Aires
Mensajes: 305
Antigüedad: 16 años, 11 meses
Puntos: 14
Respuesta: Cambiar color de celda

De nada(; Me alegro que haya servido.

Etiquetas: celda, color
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 21:08.