2011-01-13 117 views
0

我真的很努力让这个工作,如果我的PHP脚本返回成功,我是什么。jquery延迟超时函数?

呼应成功

我想它应该是说恭喜所有的设置,但停留aleast 5秒,但它似乎从来没有工作,我已经试过elay等,但仍然得到问题,请帮助的消息。

这是我的代码它的工作原理,但大约一秒钟,然后重定向到快速阅读它。

if($.trim(data) == 'Congratulations'){ 
setTimeout(function(){ 
    $('#congrats').fadeIn(1000,function(){ 
     window.location.href='http://example.co.uk/tour/first-time-users'; 
    }); 
},5500); 
+0

你得将在五年半秒钟后元素“恭喜”淡出该代码。什么不行?什么是“问题”? – Pointy 2011-01-13 14:53:11

回答

2

认为,你需要的是:

if($.trim(data) == 'Congratulations') { 
    $('#congrats').fadeIn(1000); 
    window.setTimeout(function() { 
     window.location.href = 'http://example.co.uk/tour/first-time-users'; 
    }, 5500); 
} 

这将显示congrats带动画效果的div然后在5.5秒后重新导入。

0

像这样的东西可能会有所帮助:)

setTimeout(function() { 
    $('#congrats').fadeIn(1000, function(){ 
     window.location = 'http://www.examle.com'; 
    }} 
}, 5500); 

超时需要自己的延迟。

+0

啊对,我想我明白 – iSimpleDesign 2011-01-13 14:59:20

+0

我不想要祝贺淡入5秒我希望它立即显示,但等待5秒前页面重定向。 – iSimpleDesign 2011-01-13 15:01:08

+0

@iSi然后看到我的答案。 – 2011-01-13 15:02:02

0

设定超时需要字符串函数...

尝试

if($.trim(data) == 'Congratulations'){ 
    setTimeout("function(){ 
     $('#congrats').fadeIn(1000,function(){ 
      window.location.href='http://example.co.uk/tour/first-time-users'; 
     }); 
    }",5500); 
} 
0

更好的选择,我认为是:

if($.trim(data) == 'Congratulations'){ 
    $('#congrats').fadeIn(1000, function() { setTimeout(function(){ 
     window.location.href='http://example.co.uk/tour/first-time-users'; 
    }, 5000)}); 
}