Metode clearQueue
Metode clearQueue ļauj mums no rindas izdzēst visas funkcijas, kuras vēl nav bijušas palaistas.
Sintakse
Šādi mēs varam notīrīt funkciju rindu. Var padot neobligātu parametru ar rindas nosaukumu
virknē (pēc noklusējuma fx - standarta efektu rinda). Ja nepadod nevienu
parametru, tad no rindas fx tiks izdzēstas visas atlikušās funkcijas:
.clearQueue([rindas nosaukums]);
Šī metode ir līdzīga metodei
stop. Bet,
ja pēdējā var strādāt tikai ar animāciju, tad
clearQueue ļauj strādāt ar jebkuru jQuery rindu,
kura ir pievienota ar metodi
queue.
Piemērs
Kad nospiežam uz pogas #start,
mēs palaidīsim animāciju. Kad nospiežam uz
pogas #stop mēs apstādināsim animāciju
un notīrīsim rindu, izmantojot metodi
clearQueue. Atkārtoti nospiežot uz
#start animācija sāksies no jauna:
<button id="start">sākt</button>
<button id="stop">apstādināt</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();
});