Olá pessoal! Hoje vou falar sobre como realizar um simples efeito de SlideUp e SlideDown ( lembra bem o accordion do Jquery UI ), mas de maneira simples onde você mesmo poderá alterar e trabalhar seus componentes sem a dependencia do Jquery UI ou de componentes que realizam isto.
Iremos utilizar apenas a nova biblioteca do Jquery que pode ser baixada aqui . Vamos utilizar inicialmente nossa estrutura com o css :
<style>
#Slider {
}
#Atual {
background: silver;
color: White;
padding: 20px;
}
.slideup, .slidedown {
max-height: 0;
overflow-y: hidden;
-webkit-transition: max-height 0.8s ease-in-out;
-moz-transition: max-height 0.8s ease-in-out;
-o-transition: max-height 0.8s ease-in-out;
transition: max-height 0.8s ease-in-out;
}
.slidedown {
max-height: 60px ;
}
</style>Veja nosso Html :
<div class="container" style="padding: 40px">
<button id="Trigger">Acionar Slideup/SlideDown</button>
<div id="Slider" class="slideup">
<div id="Atual">
Olá Mundo - Código Simples
</div>
</div>
</div>
E pra finalizar vamos utilizar a nossa função JavaScript :
<script data-require="[email protected]" data-semver="2.0.3" src="http://code.jquery.com/jquery-2.0.3.min.js"></script> <script> $("#Trigger").click(function () { //$("#Slider").toggleClass("slidedown slideup"); if ($("#Slider").hasClass("slideup")) $("#Slider").removeClass("slideup").addClass("slidedown"); else $("#Slider").removeClass("slidedown").addClass("slideup"); }); </script>
Com isto vamos conseguir basicamente este efeito transformando este código em um arquivo html:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<style>
#Slider {
}
#Atual {
background: silver;
color: White;
padding: 20px;
}
.slideup, .slidedown {
max-height: 0;
overflow-y: hidden;
-webkit-transition: max-height 0.8s ease-in-out;
-moz-transition: max-height 0.8s ease-in-out;
-o-transition: max-height 0.8s ease-in-out;
transition: max-height 0.8s ease-in-out;
}
.slidedown {
max-height: 60px ;
}
</style>
</head>
<body>
<div class="container" style="padding: 40px">
<button id="Trigger">Acionar Slideup/SlideDown</button>
<div id="Slider" class="slideup">
<div id="Atual">
Olá mundo - Código Simples
</div>
</div>
</div>
<script data-require="[email protected]" data-semver="2.0.3" src="http://code.jquery.com/jquery-2.0.3.min.js"></script>
<script>
$("#Trigger").click(function () {
//$("#Slider").toggleClass("slidedown slideup");
if ($("#Slider").hasClass("slideup"))
$("#Slider").removeClass("slideup").addClass("slidedown");
else
$("#Slider").removeClass("slidedown").addClass("slideup");
});
</script>
</body>
</html>
Pronto! Assim você poderá criar outros efeitos de acordo com sua necessidade!
Obs: Deixei comentado via javascript uma função que também realiza o mesmo processo de slide porém de maneira simplificada e direta.
Por hoje é só. Mais um tutorial utilizando Código Simples! 😉

