Back to Question Center
0

Avakirina Pergala Parastinê ya bi CSS Animasyonê & jQuery            Avakirina Pergala Parastinê ya bi CSS Animasyonê & Gotûbêja bikarhêner: BootstrapAnimationCSS ArchitectureCanvas & Semalt

1 answers:
Avakirina Daxistina Peldanka CSS ya CSS û JQuery

Hin mehan berî, min gotarek li ser MixItUp nivîsîn, nivîsandina jSemalt ji bo jibergirtinê û şaşkirinê. Di îro, gotara min, ez ê nîşanî we çawa hûn çawa ji hêla xwe ya hêsan a hêsan a hêsan bi jSemalt û CSS-ê rehmê çêbikin.

Semalt bêtir ado, em dest bi dest pê bikin!

Sazkirina HTML

Di gava gava yekem de, ez ê tezmînata HTML ya beşê nîşan bide. Semalt li jêr xistina jêrîn:

      
Hemûyan nîşan bide Boxes Green Green Show Boxes of Blue Show Bersîvên Red Soran nîşan bide
Box1 Box2 Box3

Hişyar bikin ku min çend xalên bingehîn ên bingehîn ava kir. Semalt an explanation of it:

  • Pêşîn, min destnîşanên pelên fîlm û hêmanên ku ez dixwazim paqij bikim (em ê ji hêla hêmanên banga bangî) diyar kir.
  • Piştre, min hûrgelên armanca sê sê kategorî (şîn, kesk û sor) ve girêdayî kir û min ew daneya daneyên kategoriyê taybet - revenda de hospedagem boa. Nirxa vê taybetmendiyê kategoriya ku her elementek e.
  • Min bi rêjeya pelên peldankên danûstandinên yên filter-filter peyda kir. Nirxa vê taybetmendiyê kategoriya peldankê diyar dike. Ji bo nimûne, bişkojka daneya ya "filter" (red) taybetmendiyê / nirx dê tenê hêmanên ku ji yên sor kategorî hene nîşan bide. Ji aliyê din ve, bişkojka data (filter) "all" dê bi hemî hêman nîşan bide.

Niha hingê we li ser HTML-ê pêwîst e, em dikarin li ser lêgerîna CSS-ê bigerin.

Setting Up CSS

Her cure kategoriyek çalak e, pirtûka peldanka wê ya tevahiya çalakî ye. Bi veguherî, bişkojka bi danûstandinên -filter = "her" taybetmendiyê vê çargoşe dibe.

Avakirina pergala Parastinê ya bi CSS ajans û jQuery re çêbikinAvakirina Doktorkirina Pelavên CSS-ê û CSS-ê-jQuery Babetên din:
BootstrapAnimationCSS ArchitectureCanvas & Semalt

Li celebên celeb hene:

    . pelê {poz: hevpeyman;}. paqij bike. çalakî: berî {naverokê: '';helwesta: temamî;çepgir: 0;top: 0;display: inline-block;width: 0;height: 0;border-style: solid;border-width: 15px 15px 0 0;sînor-reng: # 333 transparent transparent transparent;}     

Herweha, Semalt diçin ku fîlboxê bikar bînin ku ji bo hêmanên hêmanên afirandina çêbikin.

Avakirina pergala Parastinê ya bi CSS ajans û jQuery re çêbikinAvakirina Doktorkirina Pelavên CSS-ê û CSS-ê-jQuery Babetên din:
BootstrapAnimationCSS ArchitectureCanvas & Semalt

Li jêr şêweyên peywendîdar binêrin:

    . boxes {display: flex;fox-wrap: wrap;}. qutiyeke {width: 23%;sînor: 2px solid # 333;margin: 0 1% 20px 1%;line-}     

Di dawiyê de, ez herdu celebên cuda yên CSS-ê yên ku ji hêla karanîna Semaltê ve nîşan bide hûrgelên cuda hene:

     @keyframes zoom-in {0% {veguherîne: (. is-animated {jayandarî:. 6s zoom-in;// animation: 6s rotate-right;}     

Bi navnîşan û CSS di cih de, em dikarin bikarhênerên JavaScript / jQuery dest pê bikin.

Sazkirina jQuery

Li ser kodê binêrin, piştî ku Semalt dibêje ku çi ye?

     var $ filter = $ ('paqij' [data-filter] ',$ boxes = $ (barkirî '[data-category]');fîlên $. li ('click', fonksiyonê (e) {e. astengkirina dermankirinê   ;var $ this = $ (ev);fîlên $. removeClass ('active');$ this. addClass ('active');$ filterColor = $ vî. ('data-filter');Ger ($ filterColor == 'hemû') {$ box. removeClass ('is-animated'). fadeOut   . ahd  . kirin (function    {$ box. addClass ('is-animated'). fadeIn   ;});} else {$ box. removeClass ('is-animated'). fadeOut   . ahd  . kirin (function    {$ box. barkirî ('[data-category = "' + $ filterColor + '"]'). addClass ('is-animated'). fadeIn   ;});}});     

Her carê her qutiyek peldankê tête tête, jêr têne destpêkirin:

  • Dersa çalakî ji hemû pelan ve têne veguhestin û tenê tenê ji bo hilbijartina peldankê tête kirin.
  • Pîvana daneya danûstandinê ya felter taybetmendiyê veguhestin û nirxandin.
  • Heke nirxê danûstendinê hemî hemî , divê hemû elementan xuya bikin. Ji bo vê yekê, ez pêşî wan veşartin û paşê, gava ku hemû elementên veşartî, ez ew bi xerîbên CSS an jî zoom-in CSS bikar bînin.
  • Heke nirx ne hemî , hêmanên armanca ku kategoriya peywendîdar divê bêne xuya kirin. Ji bo vê yekê, ez pêşî hemî hêmanan vekin û paşê, gava tevahiya wan veşartî, ez tenê elementên girêdayî kategorî yên gişt-ê an jî zoom-in CSS bikar bînin anîn.

Di vê yekê de, girîng e ku ji bo tiştek zelal bikin. Di binê jimara jor de ji rêbazê fadeOut binivîse. Ew xuya dike:

     qutiyên $. fadeOut   . ahd  . kirin (function    {// bedenê ya callback});     

Semalt bi vê syntaxê zûtir bizanin û tevî:

     qutiyên $. fadeOut (function    {// bedenê ya callback});     

ragihandinên semaltên cuda hene:

  • Di yekem yekem de, paşnavê piştî ku hemî hêmanên hêja veşartî hatine dar kirin. Hûn dikarin li ser vê helwestê bêtir agahdar bikin ji hêla soza beşa jûrên jQuery.
  • Di rewşeke duyemîn de, paşnav gelek caran carî kirin. Bi taybetî, ev her dem destnîşan kir ku elementek veşartî bibe.

Dîmoya jêr jêr zoom-in şoreşkirinê

Di beşa SiteP (@SitePoint) de CodePen.

Vê demo evo veguherîna rast-ê veguhestinê bikar tîne:

Ji hêla SiteP (@SitePoint) li CodePen.

Bê guman, tevgerên CSS-ê yên jorîn alternatîf e. Heke hûn nexwestin ev taybetmendiyên taybet dixwazin, ji bo ku ji wan re vebikin û ji hêla tenê têgehên jQuery fadeIn bikar tînin bikaranîna azad.

Niha niha hûn fêm dikin ka komeleyê çawa dixebitin, Semalt çawa nîşanî we çawa guhertina cûda cûda.

Animation Elements Pirrjimar

Heta niha, hûn dikarin bibînin ku hemû elementan di heman demê de têne xuya kirin. Sêmalt nuha kodê biguherînin ku ji wan re bisekinin nîşan bide:

     fîlên $. li ('click', fonksiyonê (e) {// heman koda kodê wekî li jorGer ($ filterColor == 'hemû') {$ box. removeClass ('is-animated'). fadeOut   . qedandin  . ahd  . kirin (function    {$ box. her (karûbar (i) {$ (ev) addClass ('is-animated'). dereng ((i ++) * 200). fadeIn   ;});});} else {$ box. fadeOut   . qedandin  . ahd  . kirin (function    {$ box. barkirî ('[data-category = "' + $ filterColor + '"]'). her (karûbar (i) {$ (ev) addClass ('is-animated'). dereng ((i ++) * 200). fadeIn   ;});});}});     

Kodê jor eynî berê wek xuya ye lê çend cihên cuda hene:

  • Pêşîn, ez bi rêbazek her bikar tîne ku bi hêla hêmanên armanc re vedigire. Plus, wek ku çêdibe, ez pirtirkêmtirîn elementa (ya ku hejmar-bingehîn e) ye û ew bi hejmareke zêde (e 200) e. Hejmareke derengî wekî meseleya dereng rêbazê derbas dibe. Ev hejmara hejmarek millisecondan nîşan dide ku her element divê pêşî li pêşiya fîzîkî li benda
  • Piştre, ez rêbazeke dawî ya bikar bînin ku amûrên niha-rêbazên ji bo elementên hilbijartî di bin rewşên taybetî de rawestînin. Ji bo karanîna wê bikar bînin, li ser sîteyê ye: Li ser peldanka lêgerînê binivîse û paşê, berî her tiştî hêja dibe, li ser lêgerînê dîsa bitikîne. Hûn dizanin ku hemû elementên winda ne. Wekî din, piştî vê rêbazê ev rewş ji nû ve veguhestin vê testê. Di vê rewşê de, hûn ê bibînin ku hêmanên bandorên hinek hûrgelên werbigire. Gelek caran banga ku ev rêbazê biqewimin dikare zehmet be. Ji bo vê nimûne, min gihîşt ku ez li ku derê dikişînim ez tecrûbeyek ezmûn bikim.

Dîmên jêrîn li dermanên pelên hêja bi sequentially bikaranîna zoom-in anîmasyonê:

Li ser Pêveka Cîhanê / CSS-jQuery bi Pêveka Pêvekirinê (@SitePoint) li ser CodePen paqijkirin / pêvekirina Pen Pen.

Dîmên jêrîn li dermanên fîzîkî yên bi sequentially bikaranîna rotate-right animasyonê:

Daxistina Pen Pen Sequential See / CSS'ê û jQuery bi SitePoint (@SitePoint) li ser CodePen.

Vebijêrk

Divê heman pergala bêyî jQuery çêkirin û dibe ku çêtirîn çêtirîn, lê dibe ku hêza ku ji bo jQuery fadeIn û fadeOut rêbazên hêsantir ên ku hêsanî dike hin taybetmendiyên li jêr jQuery hene.

Bila ez di şîroveyên ku hûn bi çareseriya cûda heye, an jî rêyek çêtirîn nasnameyek nas bikin.

March 6, 2018