Metoda clearQueue
Metoda clearQueue ne permite să eliminăm din
coadă toate funcțiile care nu au fost pornite.
Sintaxă
Așa putem goli coada de funcții. Putem transmite
opțional numele cozii
sub formă de șir (implicit fx - coada standard
de efecte). Dacă nu transmitem niciun
parametru, atunci din coada fx vor fi șterse toate
funcțiile rămase:
.clearQueue([numele cozii]);
Această metodă este analogă metodei
stop. Dar,
dacă aceasta din urmă poate funcționa doar cu animația, atunci
clearQueue permite lucrul cu orice coadă
jQuery, care a fost adăugată cu metoda
queue.
Exemplu
La apăsarea butonului #start,
vom porni animația. La apăsarea
butonului #stop vom opri animația
și vom goli coada folosind metoda
clearQueue. La re-apăsarea
#start animația va începe de la capăt:
<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() {
let myDiv = $('div');
myDiv.show('slow');
myDiv.animate({
left: '+=200'
}, 5000);
myDiv.queue(function() {
let that = $(this);
that.addClass('newcolor');
that.dequeue();
});
myDiv.animate({
left: '-=200'
}, 1500);
myDiv.queue(function() {
let that = $(this);
that.removeClass('newcolor');
that.dequeue();
});
myDiv.slideUp();
});
$('#stop').click(function() {
let myDiv = $('div');
myDiv.clearQueue();
myDiv.stop();
});