Metodas clearQueue
Metodas clearQueue leidžia mums pašalinti iš
eilės visas funkcijas, kurios nebuvo paleistos.
Sintaksė
Taip mes galime išvalyti funkcijų eilę. Galima perduoti
neprivalomą parametrą - eilės pavadinimą
eilutės pavidalu (pagal nutylėjimą fx - standartinė
efektų eilė). Jei neperduosite jokių
parametrų, tai iš fx eilės bus pašalintos visos
likusios funkcijos:
.clearQueue([eilės pavadinimas]);
Šis metodas yra analogiškas metodui
stop. Bet,
jei pastarasis gali dirbti tik su animacija, tai
clearQueue leidžia dirbti su bet kuria jQuery eile,
kuri buvo pridėta metodu
queue.
Pavyzdys
Spustelėjus mygtuką #start,
mes pradėsime animaciją. Spustelėjus
mygtuką #stop mes sustabdysime animaciją
ir išvalysime eilę naudodami metodą
clearQueue. Pakartotinai spustelėjus
#start animacija prasidės iš naujo:
<button id="start">pradėti</button>
<button id="stop">sustabdyti</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();
});