113 of 119 menu

Die animate-metode

Die animate metode laat jou toe om animasie-effekte vir verskeie CSS-eienskappe te skep. Die enigste verpligte parameter is 'n objek met CSS-eienskappe, soortgelyk aan dié wat ons oordra na die css metode. Baie eienskappe met nie-numeriese waardes of verskeie waardes kan nie geanimeer word deur jQuery se basiese funksionaliteit nie (bv. background-color). Ook word verkorte name van CSS-eienskappe nie altyd ondersteun nie, byvoorbeeld font - in plaas daarvan moet jy fontSize of font-size gebruik. Voor waardes kan jy '+=' of '-=' plaas, in sulke geval sal die waarde wat gespesifiseer word bygetel of afgetrek word van die huidige waarde van die eienskap. Ook in plaas van numeriese waardes kan jy show, hide of toggle plaas. Alle jQuery effekte, insluitend animate, kan globaal gedeaktiveer word deur die instelling jQuery.fx.off = true te gebruik, wat die duurwaarde op 0 stel.

Sintaksis

Die eerste parameter van animasie is 'n objek met CSS-eienskappe en hul waardes in die formaat sleutel: waarde, wat ons gaan animeer. Die ander parameters word beskou as opsiesioneel. Die tweede parameter - bepaal die duur van die animasie in millisekondes, 400ms verstek. Die derde parameter is die gemaksfunksie vir die oorgang (verstek is swing), en die vierde - 'n callback-funksie, wat uitgevoer word na voltooiing van die animasie:

.animate(eienskappe, [duur ], [gemaksfunksie ], [callback-funksie ]);

Tyd kan nie net in millisekondes gestel word nie, maar ook met sleutelwoorde slow (600ms) en fast (200ms), hoe groter die waarde, hoe stadiger die animasie. Jy kan die tweede parameter gebruik om verskeie opsies aan die metode oor te dra, in die vorm van 'n JavaScript objek, wat pare sleutel: waarde bevat:

.animate(eienskappe, opsies);

Byvoorbeeld, laat ons die CSS-eienskappe width en height die waarde toggle gee. Duur op 5000ms, ons sal die gemaksfunksies as 'n objek oordra, vir breedte sal dit 'n lineêre funksie wees, en vir hoogte - easeOutBounce, ook na voltooiing van die animasie sal ons funksie een keer uitgevoer word (sien die sleutel complete), wat na die element met #test 'n div met die inskripsie 'Animation complete.' sal plaas:

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

Hieronder in die tabel word die eienskappe en metodes van die objek options en hul beskrywing gegee:

Naam Beskrywing
duration Duur van animasie in millisekondes - string of getal. 400ms verstek.
easing Bepaal watter gemaksfunksie om te gebruik. swing verstek.
queue Booleaanse waarde of string. true verstek. Dui aan - om die animasie in die ry te plaas. Met waarde false sal die animasie onmiddellik begin. As die parameter as string oorgedra word, sal die animasie in die ry geplaas word, wat deur hierdie parameter verteenwoordig word. Wanneer 'n ry met 'n pasgemaakte naam gebruik word, sal die animasie nie outomaties begin nie, om dit te begin - gebruik dequeue('queuename').
specialEasing Hier kan jy 'n objek oordra, waar sleutels CSS-eienskappe is, en waardes - die ooreenstemmende gemaksfunksies.
step 'n Funksie wat vir elke geanimeerde eienskap van elke geanimeerde element geroep word. Dit laat toe om die Tween objek te modifiseer om die waarde van die eienskap te verander voordat dit gestel word. As parameters aanvaar dit die huidige waarde van tween en die Tween objek.
progress 'n Funksie wat na elke stap van die animasie geroep word, slegs een keer per element ongeag die aantal geanimeerde eienskappe. Die funksie aanvaar drie parameters animation (as 'n belofte), progress ('n getal van 0 tot 1) en remainingMs ('n getal oorblywende millisekondes).
complete 'n Funksie wat een keer na die einde van die animasie van die element geroep word. Die funksie aanvaar animation (as 'n belofte).
start 'n Funksie wat geroep word wanneer die animasie van die element begin. Die funksie aanvaar animation (as 'n belofte) en jumpedToEnd ('n Booleaanse waarde. As true, dan word die animasie outomaties voltooi).
done 'n Funksie wat geroep word wanneer die animasie van die element eindig (sy belofte suksesvol voltooi is). Die funksie aanvaar animation (as 'n belofte) en jumpedToEnd ('n Booleaanse waarde. As true, dan word die animasie outomaties voltooi).
fail 'n Funksie wat geroep word wanneer die animasie van die element met 'n fout eindig (sy belofte met 'n fout voltooi is). Die funksie aanvaar animation (as 'n belofte) en jumpedToEnd ('n Booleaanse waarde. As true, dan word die animasie outomaties voltooi).
always 'n Funksie wat geroep word wanneer die animasie van die element voltooi of gestop word sonder voltooiing (sy belofte suksesvol of met 'n fout voltooi is). Die funksie aanvaar animation (as 'n belofte) en jumpedToEnd ('n Booleaanse waarde. As true, dan word die animasie outomaties voltooi).

Voorbeeld

Kom ons skuif, wanneer op die knoppie #left gedruk word, die groen vierkant na links, en op die knoppie #right na regs met 50px, ons sal ook die duur op 600ms stel - met die opdrag slow:

<button id="left">links</button> <button id="right">regs</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'); });

Sien ook

  • die metode show,
    wat elemente glad wys
  • die metode stop,
    wat toelaat om 'n begin animasie te stop
  • die metode delay,
    wat 'n vertraging in die uitvoering van gebeure stel
  • die eienskap jQuery.fx.off,
    wat toelaat om animasie globaal af te skakel
  • die selektor animated,
    wat elemente kies wat tans by animasie betrokke is
Afrikaans
AzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ons gebruik koekies vir die werking van die webwerf, ontleding en personalisering. Die verwerking van data geskied volgens die Privaatheidsbeleid.
aanvaar alles instel verwerp