Ver Mensaje Individual
  #7 (permalink)  
Antiguo 27/11/2013, 11:25
bemitoreya
 
Fecha de Ingreso: marzo-2010
Mensajes: 50
Antigüedad: 14 años, 8 meses
Puntos: 0
Respuesta: cambiar de posicion un checkbox al ser activado

Cita:
Iniciado por Alexis88 Ver Mensaje
Pensando en otras formas de hacer esto, di con la siguiente: En lugar de clonar y mover el elemento a otra sección para, finalmente, eliminar el original, basta con moverlo, alterando los valores de su posición.

Código HTML:
Ver original
  1. <!DOCTYPE html>
  2. <html lang = "es">
  3.   <meta charset = "utf-8" />
  4.   <style type = "text/css">
  5.     #uno, #dos {
  6.       width: 12.5em;
  7.       height: 7em;
  8.     }
  9.    
  10.     #uno {
  11.       background: #0f0;
  12.     }
  13.    
  14.     #dos {
  15.       background: #f00;
  16.     }
  17.    
  18.     div {
  19.       display: inline-block;
  20.       width: 5em;
  21.       height: 2em;
  22.       background: yellow;
  23.       text-align: center;
  24.       margin: .5em;
  25.       position: relative;
  26.     }
  27.   </style>
  28.  
  29. </head>
  30. <body>  
  31.   <section id = "uno">
  32.     <div data-level = "1" id = "a"> 1 </div>
  33.     <div data-level = "1" id = "b"> 2 </div>
  34.     <div data-level = "1" id = "c"> 3 </div>
  35.     <div data-level = "1" id = "d"> 4 </div>
  36.   </section>
  37.      
  38.   <section id = "dos"></section>
  39.  
  40.   <script type = "text/javascript" src = "http://code.jquery.com/jquery-1.10.2.js"></script>
  41.   <script type = "text/javascript">
  42.   $("div").click(function () {
  43.     var data = this.getAttribute("data-level");
  44.    
  45.     if (data == 1) this.setAttribute("data-level", 2);
  46.     else this.setAttribute("data-level", 1);
  47.    
  48.     if (this.getAttribute("data-level") == 1)
  49.       $(this).animate({"top": "-=8em"}, 1200);
  50.     else
  51.       $(this).animate({"top": "+=8em"}, 1200);
  52.   });    
  53.   </script>
  54. </body>
  55. </html>

A cada div, le asigné el atributo personalizado data-level, el cual empieza con el valor 1, pero cada vez que le de un clic a cada div, dicho valor cambiará, si era 1, pasará a ser 2 y viceversa, con esto determinaremos si el div se mueve hacia arriba o hacia abajo.

Saludos

Analizando bien el codigo y asiendo unos ajustes consegi lo que queria gracias a tu codigo te agradesco y me cuesta trabajio por que soy algo nuevo en esto
Nuevamente gracias por la ayuda Tema solucionado.

Aqui como quedo el script

Código HTML:
<script type = "text/javascript">
  $("div").click(function () {
    var data = this.getAttribute("data-level");
   

    if (this.getAttribute("data-level") == 1)
	{
	$(this).appendTo('#dos');
	this.setAttribute("data-level", 2);
	}
    else
	{
     $(this).appendTo('#uno');
	 this.setAttribute("data-level", 1);
	}
  });    
  </script>