115 of 119 menu

queue-metodi

queue-metodi mahdollistaa meille työskennellä elementtiin liitettyjen funktioiden jonon kanssa. Katso myös clearQueue-metodi, joka mahdollistaa meille poistaa jonosta kaikki funktiot, jotka eivät ole vielä käynnistyneet.

Syntaksi

Näin näytämme elementtiin liitettyjen suoritettavien funktioiden jonon. Voimme välittää valinnaisen parametrin jonon nimen merkkijonona (oletusarvoisesti fx - standardi efektijono):

.queue([jonon nimi]);

Voimme manipuloida jonoa. Suoritetaan kerran jokaiselle elementille. Tätä varten voimme välittää toisena parametrina funktioita sisältävän taulukon, joka korvaa nykyisen jonon sisällön:

.queue([jonon nimi], uusi jono );

Tai voimme toisena parametrina välittää uuden callback-funktion lisäämiseksi jonoon. Tämä funktio puolestaan vastaanottaa toisen funktion parametrina. Tämä mahdollistaa seuraavan elementin automaattisen poistamisen jonosta ja jonon liikuttamisen:

.queue([jonon nimi], callback-funktio(next) { next(); });

Jokaisella elementillä voi olla yksi tai useampi jono. Monissa sovelluksissa käytetään vain yhtä (fx). Jonot mahdollistavat toimintojen sarjan suorittamisen elementillä asynkronisesti, ilman ohjelman suorituksen keskeyttämistä. queue-kutsu callback-funktiolla mahdollistaa meille sijoittaa uuden funktion jonon loppuun. callback-funktio suoritetaan kerran jokaiselle elementille joukossa. Kun funktio lisätään queue-metodilla, meidän täytyy varmistaa, että myöhemmin kutsutaan dequeue-metodia, jotta seuraava funktio ketjussa alkaa toimia.

Esimerkki

Lisätään mukautettu funktio. Ensin, #animate-painikkeen painamisen jälkeen, näytämme punaisen neliön, joka liikkuu oikealle 2s ajan, sitten queue-metodin avulla lisäämme mukautetun funktion, joka värjää neliön vihreäksi lisäämällä luokan newcolor. Kuten näette, tässä kutsutaan dequeue-metodia poistamaan funktio jonosta. Sitten neliömme liikkuu vasemmalle puolisen sekuntia ja värjätään takaisin punaiseksi - toisen mukautetun funktion avulla poistamme luokan newcolor. Animaation päätyttyä kutistamme neliömme:

<button id="animate">start</button> <div></div> div { position: absolute; margin: 3px; width: 50px; height: 50px; left: 0px; top: 30px; background: red; display: none; } div.newcolor { background: green; } $('#animate').click(function() { $('div') .show('slow') .animate({left: '+=200'}, 2000) .queue(function() { $(this).addClass('newcolor').dequeue(); }) .animate({left: '-=200'}, 500) .queue(function() { $(this).removeClass('newcolor').dequeue(); }) .slideUp(); });

Esimerkki

Lisätään jono taulukkona poistaaksemme edellisen. Kun painamme #start-painiketta, näemme edellisen esimerkin animaation. Kun painamme #stop-painiketta, pysäytämme animaation lisäämällä tyhjän taulukon. Kun painamme uudelleen #start-painiketta, animaatio alkaa alusta:

<button id="start">start</button> <button id="stop">stop</button> <div></div> div { position: absolute; margin: 3px; width: 50px; height: 50px; left: 0px; top: 30px; background: red; display: none; } div.newcolor { background: green; } $('#start').click(function() { $('div') .show('slow') .animate({left: '+=200'}, 5000) .queue(function() { $(this).addClass('newcolor').dequeue(); }) .animate({left: '-=200'}, 1500) .queue(function() { $(this).removeClass('newcolor').dequeue(); }) .slideUp(); }); $('#stop').click(function() { $('div').queue('fx', []).stop(); });

Katso myös

  • animate-metodi,
    joka animoi elementtien ominaisuuksia
  • clearQueue-metodi,
    joka mahdollistaa kaikkien suorittamattomien elementtien poistamisen funktiojonosta
  • dequeue-metodi,
    joka mahdollistaa seuraavan funktion suorittamisen funktiojonossa
Suomi
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Käytämme evästeitä verkkosivuston toiminnalle, analytiikalle ja personoinnille. Tietojen käsittely tapahtuu Tietosuojakäytännön mukaisesti.
hyväksy kaikki mukauta hylkää