2016-08-25 128 views
0

你能帮我,告诉我如何用IF语句执行函数吗?我是使用Javascript的初学者(使用jQuery),我找不到任何对我来说足够简单的教程。如何用IF语句执行函数?

var prvni; 

    function druhy() { 
     prvni = setTimeout(treti, 1250); 
    } 

    function treti() { 
     $('.domovprostredninadpis').fadeOut(5000); 
    } 

    $(window).scroll(function() { 

     if ($(this).scrollTop()>= $('#zonaobsahu').offset().top) { 
      function druhy(); 
     } 

    }); 

我想让DIV” .domovprostredninadpis'淡出在5秒后我到了‘#zonaobsahu’(延迟1250ms之前‘domovprostredninadpis’开始淡出)。

非常感谢大家的帮助!

+1

只是删除功能的关键字。这样调用 - 'druhy();' – Akshay

+0

@Akshay谢谢。解决了;) –

+1

“我找不到任何对我来说很容易的教程。”如果您没有看到函数声明和函数调用之间的区别,那么在使用任何语言进行开发时都会遇到所有可能的问题。尝试找到像MDN(Mozilla开发人员网络)的良好参考。 –

回答

0

只需更改行函数druhy();到druhy();

var prvni; 

function druhy() { 
    prvni = setTimeout(treti, 1250); 
} 

function treti() { 
    $('.domovprostredninadpis').fadeOut(5000); 
} 

$(window).scroll(function() { 

    if ($(this).scrollTop()>= $('#zonaobsahu').offset().top) { 
     druhy(); 
    } 

}); 
0

试试这个;)

只要改变行function druhy();druhy();并添加clearTimeout(prvni);

var prvni; 

function druhy() { 
    prvni = setTimeout(treti, 1250); 
} 

function treti() { 
    $('.domovprostredninadpis').fadeOut(5000); 
} 

$(window).scroll(function() { 

    if ($(this).scrollTop() >= $('#zonaobsahu').offset().top) { 
     /* You should clear timeout before setting again */ 
     clearTimeout(prvni); 
     druhy(); 
    } 

});