Метад clearQueue
Метад clearQueue дазваляе нам выдаліць з
чаргі ўсе функцыі, якія не былі запушчаны.
Сінтаксіс
Так мы можам ачысціць чаргу функцый. Можна перадаць
неабавязковым параметрам назву чаргі
у выглядзе радка (па змаўчанні fx - стандартная
чарга эфектаў). Калі не перадаваць ніякіх
параметраў, то з чаргі fx выдаляцца ўсе
якія засталіся функцыі:
.clearQueue([імю чаргі]);
Гэты метад аналагічны метаду
stop. Але,
калі апошні можа працаваць толькі з анімацыяй, то
clearQueue дазваляе працаваць з любой чаргой
jQuery, якая была дададзена метадам
queue.
Прыклад
Давайце пры націсканні на кнопку #start,
мы будзем запускаць анімацыю. Пры націсканні на
кнопку #stop мы будзем спыняць анімацыю
і чысціць чаргу пры дапамозе метаду
clearQueue. Пры паўторным націсканні на
#start анімацыя будзе пачынацца нанова:
<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();
});