Эквивалент jquery 1.4.2 для setTimeout и clearTimeout - PullRequest
4 голосов
/ 22 июня 2010

Есть ли какой-либо эквивалент для setTimeout и clearTimeout функций в jquery 1.4.2 .... Я нашел этот ex, который использует jquery 1.3.2 ..

var alerttimer = window.setTimeout(function () {
            $alert.trigger('click');
            }, 3000);
            $alert.animate({height: $alert.css('line-height') || '50px'}, 200)
            .click(function () {
              window.clearTimeout(alerttimer);
              $alert.animate({height: '0'}, 200);
            });

Ответы [ 2 ]

4 голосов
/ 22 июня 2010

setTimeout и clearTimeout являются нативными методами JavaScript, поэтому они также работают в jQuery 1.4.2 - и поэтому нет необходимости в эквивалентах в jQuery.

3 голосов
/ 22 июня 2010
$(document.body).delay(3000).show(1, function(){
    // do something
});

, который использовал бы jQuerys fx в очереди для создания тайм-аута.Чтобы эмулировать интервал таким образом, используйте функцию, которая вызывает себя при закрытии обратного вызова.

function repeat(){
     // do something
     $(document.body).delay(5000).show(1, repeat);
}

Используйте $(document.body).stop(), чтобы очистить очередь fx и остановить интервал.

Это работаетпохож на javascript setTimeout интервал "взломать".

(function(){
    alert('I popup every 5 seconds! haha!');
    setTimeout(arguments.callee, 5000);
})();
...