2011-01-13 113 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)}); 
}