2011-02-12 53 views
0

我想在jQuery的幫助下顯示一些效果(動畫),應該根據針對特定針找到多少個結果來計算。規則是效果應該持續不超過5分鐘,並且至少要持續5秒。如何計算這個時間?

所以,這是我特別做的。我在數據庫中搜索用戶輸入的特定單詞並計算結果。然後我在同一個數據庫中搜索自己定義的單詞並計算結果。如果後面的結果比以前的結果多,我需要計算顯示效果的時間。後者的結果越多,效果應該持續的時間越長。另外,我需要遵守規則:不超過5分鐘,不少於5秒。

我需要這是最好的準確。

這可能是一個愚蠢的問題,但我想不出我自己如何計算的時候了! :)

回答

1

http://jsfiddle.net/rCVnv/3/

$(function(){ 
    var firstNum = Math.random()*10000, 
     secondNum = Math.random()*10000, 
     result = parseInt(secondNum - firstNum), 
     milli = 0; 

    if(result > 0){ 
     if(result < 300000 && result > 5000){ 
      milli = result; 
      $("#test").fadeOut(result); 
     }else if(result > 300000){ 
      milli = 300000; 
     }else if(result < 5000){ 
      milli = 5000; 
     } 

     $("#test").fadeOut(milli); 
    } 

$("#result").text("Result : " + result); 

});

我不太確定你將如何計算所需的毫秒數。我在這裏做的是生成2個隨機數字,並從第二個數值中減去第一個數值。如果結果爲300000毫秒(5分鐘)和5000毫秒之間,那麼它只是消失在這一點數。如果超出這些範圍,則將其設置爲高端或低端。當然,如果結果是否定的什麼都不會發生,因爲值1比值2

此外,我使用淡出,其可以容易地與動畫代替大。

0
var intSecondsPerResult = 2; 
var intAnimationDuration = intSecondsPerResult*{$intResultsCount}; 
if(intAnimationDuration < 5) { 
    intAnimationDuration = 5; 
} else if(intAnimationDuration > 300) { 
    intAnimationDuration = 300; 
} 

PS:$ intResultsCount包含您的結果集

這是你想要的大小?