Olá pessoal, recentemente me aventurei a usar mais um plugin do jQuery ou posso chama-lo de biblioteca auxiliar. Mas antes de dar nomes vamos explicar um pouco mais.
Quando se faz uma animação com jQuery você pode controlar muitos atributos de seu seletor dando a ele “vida” ou seja pode-se move-lo aumentar se tamanho e muitas outras coisas na documentação oficial você pode saber mais. O problema é que estas animação tem inÃcio e fim baseadas em milesegundos, ela começa em um ponto e termina de forma regular em outro, por exemplo, se você tem uma div que vai da esquerda para a direita em 1000 milesegundos (que equivale a 1 segundo) então vamos imaginar que ele vai de zero a cem pixel´s e se move. Veja o exemplo abaixo:
A biblioteca easing ajuda a melhorar esta transição, ela faz com que esta div vá do ponto zero ao cem com alguns efeitos de desaceleração, aceleração elásticos e outros muito bacanas, mas é importante anotar que esta biblioteca sobrepõe a biblioteca Animate do jQuery, ou seja muda os parâmetros que a recebe, ou seja, a documentação nos orientará  a passar alguns parâmetros mas a biblioteca easing mudará isso.
Vamos aos exemplos práticos para começar, primeiro baixe a biblioteca jQuery e Easing e chame-as no seu arquivo:
E agora chamamos a função que vai fazer a div andar da esquerda para a direita e andar 100 pixel´s, veja como ficará;
<script type="text/javascript"> $(function(){ $('#box').animate( { marginLeft: 100 }, 1000, 'easeOutBounce' ) }); </script>
Aqui chamamos a função Animate, e cada vÃrgula separa os seus parâmetros no primeiro falamos o que vai acontecer, aqui tem muito e comum com o CSS, se você colcoar ali width, heigth, font-size, color vai funcionar também! O segundo parâmetro é o tempo que esta animação vai aocntecer e o segundo é o easing, neste exemplo como um elástico ele vai “rebater” e parar, veja como ficou
É bem simples não na página da biblioteca tem um combo onde você pode testar as animações disponÃveis, abaixo a lista completa
Todas as funções/métodos da biblioteca Easing (ease) | ||
---|---|---|
easeInQuad | easeInCubic | easeInQuart |
easeOutQuad | easeOutCubic | easeOutQuart |
easeInOutQuad | easeInOutCubic | easeInOutQuart |
easeInSine | easeInExpo | easeInCirc |
easeOutSine | easeOutExpo | easeOutCirc |
easeInOutSine | easeInOutExpo | easeInOutCirc |
easeInBack | easeInBounce | easeInQuint |
easeOutBack | easeOutBounce | easeOutQuint |
easeInOutBack | easeInOutBounce | easeInOutQuint |
easeInElastic | easeOutElastic | easeInOutElastic |
Se quiser ver os efeitos em ação veja nos links abaixo e também a documentação completa.
Até mais
Tweet |
Boa tarde Adriano,
Cara, você poderia me ajudar, estou precisando fazer um slide desse tipo “http://codecanyon.net/item/saloon-the-jquery-banner-rotator-plugin/full_screen_preview/1629896?ref=themespotters” onde eu tenho um background e div com textos tem uma animação, e possivel fazer com jquery easing
Cara, desde já agradeço
Olá Adriano. Em primeiro lugar parabéns pelo trabalho, tem agregado muito. Talvez você possa me ajudar, pois não e tendo muito de javascript e jquery. Estou tentando fazer com que divs com conteudo apareçam chamadas por um menu. Até ai tudo bem, eu clico no bt 1 e a div 1, entra normalmente com animate. O que preciso é que aoclicar em um bt, a div que estiver em cena volte para seu estado inicial, ou seja….e mais ou menos um slider de divs. Espero ter sido claro. Um abraço. Obrigado.
Olá Adriano… Obrigado por responder. Bom, o script não rolou… ou não expliquei bem pu estou fazendo algo errado. Um exemplo mais prático. Tenho 3 botões e para cada um, uma div que será apresentada. Ao clicar no bt um, entra a div um… se eu clicar agora no bt 3, por exemplo, sai a div um e entra a 3… são duas ações no mesmo bt…tirar a div que está no palco e colocar a div correspondente. Desculpe pelo incômodo. Obrigado.
pode me ajudar? não consigo aplicar nenhum efeito.
quando clico o easing deveria fechar, fecha mas abre novamente.
Obrigado.
$(document).ready(function () {
$(‘#categorias a.item’).click(function () {
//slideup or hide all the Submenu
$(‘#categorias li’).children(‘ul’).slideUp(‘slow’);
//remove all the “Over” class, so that the arrow reset to default
$(‘#categorias a.item’).each(function () {
if ($(this).attr(‘rel’)!=”) {
$(this).removeClass($(this).attr(‘rel’) + ‘Over’);
}
});
//show the selected submenu
$(this).siblings(‘ul’).slideDown(‘slow’);
//add “Over” class, so that the arrow pointing down
$(this).children(‘a’).addClass($(this).children(‘li a’).attr(‘rel’) + ‘Over’);
return true;
});
});