En mi función jQuery, estoy animando un elemento div, por lo que se mueve 200 px hacia la derecha, recibe una clase Movida y algo de opacidad:
if (!$(".block2").hasClass("Moved2")) { $(".block2").animate({ "left": "+220px" }, "slow", function() { $.ajax ({url: 'play.php', data: {"var1": val}, type: 'get', success: function(json) { if(!json.error) {$(".block2").removeClass("Moved2").css({left:"0",opacity:"1"});} }}); } ).fadeTo("slow", 0.33).addClass("Moved2"); }Esto funciona bien, pero después de que termine, quiero tener todas las propiedades y css como estaban antes de la animación. Pero no quiero recargar la página.
Como puedes ver, ahora lo hago de esta manera:
$(".block2").removeClass("Moved2").css({left:"0",opacity:"1"});Hace lo que quiero, pero puede haber más propiedades afectadas en otras funciones y no quiero cambiar cada elemento uno por uno. ¿Hay algún tipo de DESHACER para todo lo que hace esa secuencia de jQuery?
Puede usar removeAttr() , de esta manera, eliminará todos los estilos en línea agregados a la clase .block2
$(".block2").removeClass("Moved2").removeAttr("style")