Meny
Är gratis
registrering
Hem  /  Problem/ Jquery smidig transparensförändring. Hur man gör en smidig transparens av ett webbelement med jQuery

Jquery smidig transparensförändring. Hur man gör en smidig transparens av ett webbelement med jQuery

Animation på moderna webbsidor har länge tagits för givet. Bleknade element, flygande meddelanden, glidande bildgallerier förbättrar användarupplevelsen och ökar webbplatsens prestanda. I det populära javascript-biblioteket är jQuery fadeIn () en av de grundläggande animationsfunktionerna. Den kontrollerar blockens transparens.

Tona effekter

Metoden fadeIn () ändrar transparensen för det skickade elementet till 100 %. I jQuery-biblioteket är det parat med fadeOut ()-funktionen, som kan användas för att omintetgöra transparensen och därigenom "lösa upp" elementet.

Du kommer att vara intresserad av:

En liknande effekt kan uppnås med metoden fadeTo () som har ett ännu bredare inflytande. FadeTo () kan ställa in vilket transparensvärde som helst i intervallet 0 till 1.

Metodsyntax

Metoden fadeIn () i jQuery anropas i sammanhanget med elementet vars opacitet måste ändras. Det kan ta från noll till tre parametrar:

element.fadeIn (); element.fadeIn (varaktighet); element.fadeIn (varaktighet, återuppringning); element.fadeIn (varaktighet, lättnad, återuppringning); element.fadeIn (config);

Argumentet varaktighet anger hur lång tid animeringen kommer att ta. Det kan vara ett tal som representerar antalet millisekunder, eller ett av nyckelorden:

  • "snabb" (200ms);
  • "långsam" (600ms);

Om ingen varaktighet har ställts in, är den som standard 400 millisekunder.

Callback-parametern anger en funktion som kommer att anropas omedelbart efter att animeringen är klar. Callback-funktionen accepterar inga parametrar. Denna variabel i den hänvisar till DOM-noden som modifieras.

Lättningsargumentet styr timingen för animeringen, det vill säga dess hastighet över tiden. Du kan använda den för att snabba upp början och sakta ner slutet av animationen, eller för att göra den enhetlig hela tiden. Argumentvärdet är en sträng som innehåller nyckelord, är standardfunktionen "swing"-funktionen.

I följande exempel kommer jQuery fadeIn () att öka transparensen av elementet med klassen .block enhetligt under en sekund, varefter det kommer att skriva ut ett meddelande till konsolen:

$ (". block"). fadeIn (1000, linjär, funktion () (console.log ("Animering klar");));

Om de listade parametrarna inte räcker till kan metoden skickas till ett konfigurationsobjekt, som kan innehålla upp till 11 olika inställningar.

Återuppringningsfunktioner

Callback-parametern som skickas till jQuery fadeIn ()-metoden är mycket användbart alternativ, eftersom egenskapsändringar utförs asynkront, utan att blockera det allmänna flödet av kodexekvering.

const callback = funktion () (console.log ("Animering slutförd");); $ (". element"). fadeIn (1000); ring tillbaka ();

I det här exemplet kommer funktionen att köras direkt efter att animeringen startar, utan att vänta på att elementet ska visas helt.

För att allt ska fungera som det är tänkt, använd callback-argumentet för att fånga slutet av animationen:

const callback = funktion () (console.log ("Animering slutförd");); $ (". element"). fadeIn (1000, callback);

Nu kommer ett meddelande att visas i konsolen först när elementet blir fullt synligt.

Full transparens och elementdöljande

Som du vet tar nollvärdet för opacitetsegenskapen inte bort elementet från sidan, utan gör det bara osynligt. Detta beteende är inte lämpligt om vi vill dölja ett block.

Därför fungerar jQuery fade-metoderna fadeIn (), fadeTo () och fadeOut () med transparens i kombination med display-egenskapen. Ett helt genomskinligt element döljs med hjälp av displayen: ingen regel, och denna regel avbryts innan den visas.

jQuery-effekter

Definition och tillämpning

jQuery-metoden .fadeTo () låter dig ändra transparensnivån för de valda elementen.

Metod .fadeTo () liknar metoden .fadeIn (), men däremot låter den dig kontrollera vilken nivå av transparens som krävs för element.

jQuery syntax:

Syntax 1.0:$ (väljare) .fadeTo ( varaktighet, opacitet, komplett) varaktighet- Nummer eller sträng opacitet- Antal (0 - 1) komplett- Funktion Syntax 1.4.3:$ (väljare) .fadeTo ( varaktighet, opacitet, lättnader, komplett) varaktighet- Nummer eller sträng opacitet- Antal (0 - 1) lättnader- Sträng komplett- Funktion

Tillagd i jQuery-version

1.0 (syntax uppdaterad i 1.4.3)

Parametervärden

ParameterBeskrivning
varaktighet En sträng eller ett numeriskt värde som bestämmer hur länge animeringen kommer att pågå. Standard är 400(i millisekunder). Stäng nyckelord "snabb" och "långsam"överensstämma 200 och 600 millisekunder (höga värden indikerar långsam animering, lägre värden indikerar snabb).
opacitet Numeriskt värde mellan 0 och 1 anger transparens för elementet ( 1 - elementet är ogenomskinligt, 0.5 - menar, 0 - elementet är helt genomskinligt).
lättnader Nyckelord (sträng) som definierar hastighetskurvan för animering (med hjälp av en matematisk funktion - kubisk Bezier-kurva). Utan att använda externa plugins har det bara två betydelser - linjär(animationseffekt i samma hastighet från början till slut) och gunga(animationseffekten har en långsam start och ett långsamt slut, men hastigheten ökar i mitten av animeringen). Standardvärde gunga.
komplett Funktionen som ska köras efter att animeringen är klar, den anropas en gång för varje motsvarande element. Inuti funktionen hänvisar denna variabel till DOM-elementet som animeringen tillämpas på.

Användningsexempel

</span> Exempel med metoden jQuery .fadeTo ().

.fadeTo ()

innan 0,5 på en sekund ( 1000 millisekunder). Observera att det dolda elementet är synligt, detta kan undvikas genom att använda synlighetsegenskapen inställd på hidden, eller genom att använda väljare som inte påverkar de nödvändiga elementen.

Resultatet av vårt exempel:

Betrakta följande exempel där vi anger metoden fadeTo ()återuppringningsfunktion:

</span> Exempel med metoden jQuery .fadeTo () (med återuppringningsfunktion)

I detta exempel med använder jQuery metod .fadeTo () när vi klickar på knappen ändrar vi linjärt transparensen av elementen

innan 0,4 på en halv sekund ( 500 millisekunder). Dessutom, när animeringen är klar, anropar vi en funktion som lägger till ett variabelvärde till varje element. Observera att inuti funktionen hänvisar denna variabel till DOM-elementet som animeringen appliceras på, vilket gör att vi kan lägga till varje element i tur och ordning
som textinnehåll ökas variabelns värde med ett.

Resultatet av vårt exempel.

Animation på moderna webbsidor har länge tagits för givet. Bleknade element, flygande meddelanden, glidande bildgallerier förbättrar användarupplevelsen och ökar webbplatsens prestanda. I det populära javascript-biblioteket är jQuery fadeIn () en av de grundläggande animationsfunktionerna. Den kontrollerar blockens transparens.

Tona effekter

Metoden fadeIn () ändrar transparensen för det skickade elementet till 100 %. I jQuery-biblioteket är det parat med fadeOut ()-funktionen, som kan användas för att omintetgöra transparensen och därigenom "lösa upp" elementet.

En liknande effekt kan uppnås med metoden fadeTo () som har ett ännu bredare inflytande. FadeTo () kan ställa in vilket transparensvärde som helst i intervallet 0 till 1.

Metodsyntax

Metoden fadeIn () i jQuery anropas i sammanhanget med elementet vars opacitet måste ändras. Det kan ta från noll till tre parametrar:

Element.fadeIn (); element.fadeIn (varaktighet); element.fadeIn (varaktighet, återuppringning); element.fadeIn (varaktighet, lättnad, återuppringning); element.fadeIn (config);

Argumentet varaktighet anger hur lång tid animeringen kommer att ta. Det kan vara ett tal som representerar antalet millisekunder, eller ett av nyckelorden:

  • "snabb" (200ms);
  • "långsam" (600ms);

Om ingen varaktighet har ställts in, är den som standard 400 millisekunder.

Callback-parametern anger en funktion som kommer att anropas omedelbart efter att animeringen är klar. Callback-funktionen accepterar inga parametrar. Denna variabel i den hänvisar till DOM-noden som modifieras.

Lättningsargumentet styr timingen för animeringen, det vill säga dess hastighet över tiden. Du kan använda den för att snabba upp början och sakta ner slutet av animationen, eller för att göra den enhetlig hela tiden. Argumentvärdet är en sträng som innehåller nyckelordet, som standard är detta "swing"-funktionen.

I det följande kommer fadeIn () att öka genomskinligheten för elementet med klassen .block i en sekund, varefter det kommer att skriva ut ett meddelande till konsolen:

$ (". block"). fadeIn (1000, linjär, funktion () (console.log ("Animering klar");));

Om de listade parametrarna inte räcker till kan metoden skickas till ett konfigurationsobjekt, som kan innehålla upp till 11 olika inställningar.

Återuppringningsfunktioner

Callback-parametern som skickas till jQuerys fadeIn ()-metod är ett mycket användbart alternativ eftersom egenskapsändringar utförs asynkront utan att blockera det allmänna flödet av kodexekvering.

Const callback = funktion () (console.log ("Animering slutförd");); $ (". element"). fadeIn (1000); ring tillbaka ();

I det här exemplet kommer funktionen att köras direkt efter att animeringen startar, utan att vänta på att elementet ska visas helt.

För att allt ska fungera som det är tänkt, använd callback-argumentet för att fånga slutet av animationen:

Const callback = funktion () (console.log ("Animering slutförd");); $ (". element"). fadeIn (1000, callback);

Nu kommer ett meddelande att visas i konsolen först när elementet blir fullt synligt.

Full transparens och elementdöljande

Som du vet tar nollvärdet för opacitetsegenskapen inte bort elementet från sidan, utan gör det bara osynligt. Detta beteende är inte lämpligt om vi vill dölja ett block.

Därför fungerar jQuery fade-metoderna fadeIn (), fadeTo () och fadeOut () med transparens i kombination med display-egenskapen. Ett helt genomskinligt element döljs med hjälp av displayen: ingen regel, och denna regel avbryts innan den visas.

Ändrar transparensnivån för de valda elementen på sidan. Låter dig ändra genomskinlighet smidigt. Metoden har två användningsfall:

varaktighet- varaktigheten av förändringen i öppenhet. Det kan anges i millisekunder eller strängvärdet "snabbt" eller "långsamt" (200 och 600 millisekunder).
opacitet- värdet av den nödvändiga insynen. Måste anges som ett tal från 0 till 1 (0 - full transparens, 1 - ingen transparens).
ring tillbaka- Den funktion som anges som hanteraren för slutförande av transparensändringar. Inga parametrar skickas till den, men inuti funktionen kommer denna variabel att innehålla DOM-objektet för elementet vars transparens ändras. Om det finns flera sådana element kommer hanteraren att anropas separat för varje element.

varaktighet- se beskrivning ovan. Som standard är parametern 400
opacitet- se ovan.
lättnader- dynamiken i förändringen i transparens (om den kommer att sakta ner i slutet av utförandet eller tvärtom, den kommer att accelerera). (Se beskrivning)
ring tillbaka- se ovan.

  • ändra transparens
  • ställ in transparens för ett element
  • ställ in transparensnivå till element
  • element transparens
  • .fadeTo ()
  • fadeTo ()

Senast uppdaterad: 1.11.2015

Transparenseffekter tillåter oss att, genom att smidigt ändra genomskinligheten för ett element, dölja eller visa det. Transparenseffekter implementeras med metoderna fadeOut (), fadeIn (), fadeTo () och fadeToggle ().

Metoderna fadeOut (), fadeIn () och fadeToggle () har liknande användningsområden:

    fadeOut / fadeIn / fadeToggle (): metod utan parametrar

    fadeOut / fadeIn / fadeToggle ([, lättnad] [, komplett]). Durationsparametern anger hur lång tid elementets opacitetsändring kommer att ta. Som standard är dess värde 400 millisekunder.

    Lättningsparametern, som tar namnet på easingfunktionen som en sträng. Som standard är dess värde "swing". Du kan också använda "långsamma" och "snabba" värden, som motsvarar effektvaraktigheter på 600 och 200 millisekunder.

    Den fullständiga parametern representerar en återuppringningsfunktion som ska anropas av metoden när animeringen är klar

FadeTo-metoden, till skillnad från andra metoder, accepterar också opacitetsparametern - den tar ett värde till vilket elementets transparens måste ändras: fadeTo (varaktighet, opacitet [, easing] [, komplett]). Opacitetsvärdet sträcker sig från 0 (helt transparent) till 1 (helt synligt).

Låt oss säga att vi har en bild på sidan och två knappar som kommer att ändra genomskinligheten för denna bild:


Observera att fadeIn-metoden ökar transparensen till det värde den var innan med fadeOut-metoden, och inte nödvändigtvis till 1. Det vill säga, i det här fallet, eftersom fadeTo-metoden användes i början och transparensen ändrades till 0,6, fadeIn-metoden kommer också att öka transparensen upp till 0,6.