მეთოდი clearQueue
მეთოდი clearQueue საშუალებას გვაძლევს წავშალოთ რიგიდან
ყველა ის ფუნქცია, რომელიც არ დაიწყებულა.
სინტაქსი
ასე შეგვიძლია გავწმინდოთ ფუნქციების რიგი. შეგიძლიათ გადასცეთ
არასავალდებულო პარამეტრად რიგის სახელი
სტრიქონის სახით (ნაგულისხმევად fx - სტანდარტული
ეფექტების რიგი). თუ არ გადასცემთ არცერთ
პარამეტრს, მაშინ რიგიდან fx წაიშლება ყველა
დარჩენილი ფუნქცია:
.clearQueue([რიგის სახელი]);
ეს მეთოდი ანალოგიურია მეთოდის
stop. მაგრამ,
თუ უკანასკნელი მუშაობს მხოლოდ ანიმაციასთან, მაშინ
clearQueue საშუალებას აძლევს იმუშაოს ნებისმიერ jQuery რიგთან,
რომელიც დაემატა მეთოდით
queue.
მაგალითი
მოდით, ღილაკზე #start დაწკაპუნებისას,
ჩვენ დავიწყებთ ანიმაციას. ღილაკზე #stop დაწკაპუნებისას ჩვენ შევაჩერებთ ანიმაციას
და გავწმინდავთ რიგს მეთოდის clearQueue
გამოყენებით. ღილაკზე #start ხელახალ დაწკაპუნებაზე
ანიმაცია თავიდან დაიწყება:
<button id="start">დაწყება</button>
<button id="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();
});