2013-05-19 3 views
1

Итак, мне нужно иметь универсальную функцию тайм-аута для моего скрипта. Мне нужно будет использовать это много раз, и я хочу его универсализовать, поэтому я стараюсь с этим, но smthg ошибается, может ли помочь мне?Как создать универсальную функцию таймаута с jquery

$.fn.timeout = function(action, time){ 
    setTimeout(function(){ 
     action; 
    }, time); 
    return this; 
} 

и называют:

.timeout(
    settings_container.addClass('slide_down'), 200 
); 

Thx.

+1

Использование JQuery 'delay'? – GriffLab

+2

'setTimeout' уже является глобальным, почему бы не использовать его напрямую? Я не вижу цели привязать его к jQuery. – Joseph

+0

'setTimeout (действие, время)' – elclanrs

ответ

2

Вы не выполняют функцию действия,

изменение:

action; 

к:

action(); 
0

без необходимости подключения к JQuery:

GlobalObject.SpcificTimeOuttFnName = function() 
{ 
    setTimout 
    (
     // Perform some generic action 
     function() 
     { 
     $('.settings-container').addClass("slide-down"); 
     }, 
     200 
    ); 
} 
Смежные вопросы