113 of 119 menu

Metoda animate

Metoda animate omogoča ustvarjanje animacijskih efektov za različne CSS-lastnosti. Edini obvezen parameter - objekt s CSS-lastnostmi, podoben tistemu, ki ga posredujemo metodi css. Številne lastnosti, ki imajo neštevilske vrednosti ali več vrednosti, ni mogoče animirati z osnovno funkcionalnostjo jQuery (na primer background-color). Tudi ne vedno so podprta skrajšana imena CSS-lastnosti, na primer font - namesto tega je treba uporabiti fontSize ali font-size. Pred vrednostmi lahko postavimo '+=' ali '-=', v tem primeru bo navedena vrednost prišteta ali odšteta od trenutne vrednosti lastnosti. Namesto številskih vrednosti lahko tudi postavimo show, hide ali toggle. Vse jQuery učinke, vključno z animate, je mogoče onemogočiti globalno z uporabo nastavitve jQuery.fx.off = true, ki nastavi vrednost trajanja na 0.

Sintaksa

Prvi parameter animacije je objekt s CSS-lastnostmi in njihovimi vrednostmi v formatu ključ: vrednost, ki jih želimo animirati. Preostali parametri veljajo za neobvezne. Drugi parameter - določa trajanje animacije v milisekundah, 400ms privzeto. Tretji parameter funkcijo gladkosti za prehod (privzeto je swing), in četrti - callback-funkcijo, ki se bo zagnala po izvedbi animacije:

.animate(lastnosti, [trajanje ], [funkcija gladkosti ], [callback-funkcija ]);

Čas lahko določimo ne le v milisekundah, ampak tudi s ključnimi besedami slow (600ms) in fast (200ms), večja kot je vrednost, počasnejša je animacija. Lahko drugi parameter posredujemo metodi različne opcije, v obliki JavaScript objekta, ki vsebuje pare ključ: vrednost:

.animate(lastnosti, options);

Na primer, nastavimo za CSS-lastnosti width in height vrednost toggle. Trajanje na 5000ms, funkciji gladkosti posredujemo v obliki objekta, za širino bo to linearna funkcija, za višino pa - easeOutBounce, tudi po zaključku animacije se bo enkrat izvedla funkcija (glej ključ complete), ki bo za elementom z #test postavila div z napisom 'Animation complete.':

$('#test').animate({ width: 'toggle', height: 'toggle' }, { duration: 5000, specialEasing: { width: 'linear', height: 'easeOutBounce' }, complete: function() { $(this).after('<div>Animation complete.</div>'); } });

Spodaj v tabeli so navedene lastnosti in metode objekta options in njihov opis:

Ime Opis
duration Trajanje animacije v milisekundah - niz ali število. 400ms privzeto.
easing Določa katero funkcijo gladkosti uporabiti. swing privzeto.
queue Logična vrednost ali niz. true po privzetem. Določa - ali naj animacija stoji v čakalni vrsti. Pri vrednosti false se bo animacija začela takoj. Če parameter posredujemo kot niz, bo animacija postavljena v čakalno vrsto, ki jo predstavlja ta parameter. Pri uporabi čakalne vrste z uporabniškim imenom, animacija ne bo začela samodejno, da jo zaženemo - uporabite dequeue('queuename').
specialEasing Tukaj lahko posredujete objekt, v katerem so ključi CSS-lastnosti, vrednosti pa - ustrezne funkcije gladkosti.
step Funkcija, ki se pokliče za vsako animirano lastnost vsakega animiranega elementa. Omogoča modificiranje Tween objekta, da spremenimo vrednost lastnosti preden je nastavljena. Kot parametra sprejme trenutno vrednost tween in Tween objekt.
progress Funkcija, ki se pokliče po vsakem koraku animacije, samo enkrat za vsak element neodvisno od števila animiranih lastnosti. Funkcija sprejme tri parametre animation (v obliki promisa), progress (število od 0 do 1) in remainingMs (število preostalih milisekund).
complete Funkcija, ki se pokliče enkrat po koncu animacije elementa. Funkcija sprejme animation (v obliki promisa).
start Funkcija, ki se pokliče, ko se animacija elementa začne. Funkcija sprejme animation (v obliki promisa) in jumpedToEnd (Logična vrednost. Če je true, potem se animacija samodejno zaključi).
done Funkcija, ki se pokliče, ko se animacija elementa konča (njen promis je uspešno izpolnjen ). Funkcija sprejme animation (v obliki promisa) in jumpedToEnd (Logična vrednost. Če je true, potem se animacija samodejno zaključi).
fail Funkcija, ki se pokliče, ko se animacija elementa konča z napako (njen promis je izpolnjen z napako). Funkcija sprejme animation (v obliki promisa) in jumpedToEnd (Logična vrednost. Če je true, potem se animacija samodejno zaključi).
always Funkcija, ki se pokliče, ko se animacija elementa konča ali ustavi brez zaključka (njen promis je izpolnjen uspešno ali z napako). Funkcija sprejme animation (v obliki promisa) in jumpedToEnd (Logična vrednost. Če je true, potem se animacija samodejno zaključi).

Primer

Pritisnemo na gumb #left, bomo premaknili zeleni kvadrat levo, na gumb #right desno za 50px, prav tako nastavimo trajanje na 600ms - z ukazom slow:

<button id="left">left</button> <button id="right">right</button> <div class="block"></div> div { position: absolute; background-color: green; left: 50px; width: 100px; height: 100px; margin: 5px; } $('#right').click(function() { $('.block').animate({'left': '+=50px'}, 'slow'); }); $('#left').click(function() { $('.block').animate({'left': '-=50px'}, 'slow'); });

Glejte tudi

  • metoda show,
    ki gladko prikaže elemente
  • metoda stop,
    ki omogoča ustavitev zagnane animacije
  • metoda delay,
    ki nastavi zamudo izvedbe dogodkov
  • lastnost jQuery.fx.off,
    ki omogoča globalno onemogočanje animacije
  • selektor animated,
    ki izbere elemente, ki so trenutno vključeni v animacijo
Slovenščina
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Za delovanje spletnega mesta, analitiko in personalizacijo uporabljamo piškotke. Obdelava podatkov poteka v skladu s Politiko zasebnosti.
sprejmi vse nastavi zavrni