2014-10-19 3 views
-4

Как я могу вернуться или вызвать этот метод?Как вернуть функцию?

setTimeout(function() { 
    $(".header-50").fadeIn("slow"); 
    $(".header-cover-right").animate({ height: "60%"} , 2000); 
    $(".header-25").fadeIn("slow"); 
    $(".header-cover-left").animate({ height: "60%"} , 2000); 
    $(".header-10").fadeIn("slow"); 
}, 5000); 

Я хочу, чтобы изменить функцию через 5 секунд

setTimeout(function() { 
    $(".header-50").fadeIn("slow"); 
    $(".header-cover-right").animate({ height: "100%"} , 2000); 
    $(".header-25").fadeIn("slow"); 
    $(".header-cover-left").animate({ height: "100%"} , 2000); 
    $(".header-10").fadeIn("slow"); 
}, 5000); 

... и как я могу повторить этот метод навсегда?

ответ

-1

попробовать что-то вроде (ее просто и идеи, вы можете улучшить его)

var edit = true; 

function f1() { 
    alert('s1'); 
    edit = false; 
} 


function f2() { 
    alert('s2'); 
    edit = true; 
} 

function choose() 
{ 
    if(edit) 
    { 
     f1(); 
    } 
    else 
    { 
     f2(); 
    } 
} 

setInterval(function(){choose();}, 1000); 
+0

Вам действительно нужно объявить 'edit' переменную перед ... –

0

Как насчет рекурсивной функции?

function doStuff(i){ 

    var height = (i % 2) ? 60 : 100; 

    if(i){ // from 5 seconds and onwards... 

     $('.header-cover-right').animate({ height: height + 'px' } , 2000); 
     // etc... 
    } 

    setTimeout(function(){ 
     doStuff(++i || 1); 
    }, 5000); 
} 

doStuff(); 

http://jsfiddle.net/7g1f2aar/2/

Смежные вопросы