Metoda clearQueue

Metoda clearQueue pozwala nam usunąć z kolejki wszystkie funkcje, które nie zostały uruchomione.

Składnia

W ten sposób możemy wyczyścić kolejkę funkcji. Można przekazać opcjonalny parametr nazwy kolejki w postaci ciągu znaków (domyślnie fx - standardowa kolejka efektów). Jeśli nie przekażesz żadnych parametrów, to z kolejki fx zostaną usunięte wszystkie pozostałe funkcje:

javascript.clearQueue([nazwa kolejki]);

Ta metoda jest analogiczna do metody stop. Ale, jeśli ta ostatnia może działać tylko z animacją, to clearQueue pozwala pracować z dowolną kolejką jQuery, która została dodana metodą queue.

Przykład

Po naciśnięciu przycisku #start, uruchomimy animację. Po naciśnięciu przycisku #stop zatrzymamy animację i wyczyścimy kolejkę za pomocą metody clearQueue. Po ponownym naciśnięciu #start animacja rozpocznie się od nowa:

html<button id="start">start</button>
<button id="stop">stop</button>
<div></div>
cssdiv {
  position: absolute;
  margin: 3px;
  width: 50px;
  height: 50px;
  left: 0px;
  top: 30px;
  background: red;
  display: none;
}

div.newcolor {
  background: green;
}
javascript$('#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();
});

Zobacz też

  • metoda queue,
    która pozwala pokazywać i zmieniać kolejkę funkcji
  • metoda dequeue,
    która pozwala wykonać następną funkcję w kolejce funkcji
  • metoda stop,
    która pozwala zatrzymać uruchomioną animację
  • metoda animate,
    która animuje właściwości elementów