Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Resize + setInterval + clearInterval
#1
Witam! Czy podczas manipulowania oknem przeglądarki i użycia $(window).resize w jQuery powinny poprawnie zadziałać clearInterval oraz setInterval?

Przykład:

Kod:
var $rotate = $('#rotate-wrapper'),
        run,
        speed = 4000;

run = setInterval(rotateFunc, speed, $rotate);

$(window).resize(function() {
    if(window.innerWidth > 480) {
        setInterval(rotateFunc, speed, $rotate);
    }
    else {
        clearInterval(run);
    }
});

W tym przypadku clearInterval nie zatrzymuje animacji, a po przekroczeniu 480 setInterval gubi się i przyśpiesza.
"Badz czlowiekiem laskawym tak,
i od czasu do czasu wcisnij prawy alt."
Odpowiedz
#2
Ale zauważ, że wchodzisz płynnie na > 480. Przy 480, 481, 482 odpalasz kolejne setIntervale. Każdorazowo podstaw je pod zmienną run Smile
Odpowiedz


Skocz do:


Użytkownicy przeglądający ten wątek: 1 gości
Sponsorzy i przyjaciele
SeoHost.pl