Cita:
Iniciado por Alexis88 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<!DOCTYPE html>
<meta charset = "utf-8" /> <style type = "text/css"> #uno, #dos {
width: 12.5em;
height: 7em;
}
#uno {
background: #0f0;
}
#dos {
background: #f00;
}
div {
display: inline-block;
width: 5em;
height: 2em;
background: yellow;
text-align: center;
margin: .5em;
position: relative;
}
<div data-level = "1" id = "a"> 1
</div> <div data-level = "1" id = "b"> 2
</div> <div data-level = "1" id = "c"> 3
</div> <div data-level = "1" id = "d"> 4
</div>
<script type = "text/javascript" src = "http://code.jquery.com/jquery-1.10.2.js"></script> <script type = "text/javascript"> $("div").click(function () {
var data = this.getAttribute("data-level");
if (data == 1) this.setAttribute("data-level", 2);
else this.setAttribute("data-level", 1);
if (this.getAttribute("data-level") == 1)
$(this).animate({"top": "-=8em"}, 1200);
else
$(this).animate({"top": "+=8em"}, 1200);
});
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
Discula por no expresarme bien o por no plantear bien el caso pero de esta forma no me sirve ya que son mas articulos
Ejemplo mas concreto http://mexware.comyr.com/ejemplo/eje2/eje1.php
Limito los articulos en este caso 3 con el sigiente codigo
Código HTML:
var num = 0 ;
$("div[id='este']").click(function () {
if (num == 3){
return (true);
}
$(this).clone().appendTo($("#dos"));
$("#dos > *").attr("id", "square");
$(this).remove();
num++;
});
pero sigo sin poder quitar los articulos del <div id = "dos"> y regresarlos al <div id = "uno">
al pasarlo al div dos le cambio la id por square para poder utilizar el sigiente codigo:
Código HTML:
$("div[id='square']").click(function () {
$(this).clone().appendTo($("#uno"));
$("#uno > *").attr("id", "este");
$(this).remove();
});
Si cambia la id a square pero no ace la funcion para pasarlo al div uno
Alguna sugerencia