2013-09-29 79 views
1

我想要一个JavaScript函数在另一个完成后执行。这是我的代码:如何在另一个完成后执行javascript函数?

$(window).load(function(){ 
$('#dvLoading').fadeOut(2000); 
}); 

window.addLoadEvent = function() { 
$('#popuprel1').show(); 
} 
+0

定义全局变量'isCompleted',并在每个函数中使用它,或者使用'的setTimeout()'中的每一个功能下一个功能 –

回答

1

您想对fadeOut使用回调。它在初始动画完成后调用第二个函数。

http://api.jquery.com/fadeOut/

基本上 - 你想要做这样的事情:

$(window).load(function(){ 
    $('#dvLoading').fadeOut(2000, function() { 
     $('#popuprel1').show(); 
    }); 
}); 
+0

完美:) –

+0

不客气。 –

1

这是因为第二onload替换第一个。按照this。 对于onload上的多个事件,请使用addLoadEvent

+0

对不起,我编辑我的问题 –

+0

你不应该这样调用'addLoadEvent'。将函数作为参数传递:'window.addLoadEvent(function(){// code});'。为每一个你想执行的功能做到这一点。它们将按顺序调用,因为'addLoadEvent'处理它。从链接:“这种工作方式相对简单:如果window.onload尚未分配函数,则传递给addLoadEvent的函数将简单地分配给window.onload。如果已经设置了window.onload,则全新函数首先调用原始的onload处理程序,然后调用新的处理程序。“ – ep0

+0

nope doesnt work,$(window).load(function(){ $('#dvLoading')。fadeOut(2000); }); (函数(){$('#popuprel1')。show();}); does not still still –

相关问题