2013-04-18 93 views
0

jQuery中我用下面的代碼:獲取時間顯示動畫多少時間是currntly運行

j=-(i) 
    if(j%2==1) 
    { 
    $("#caption1").hide(); 
    $("#caption1").fadeIn(1000); 
    $('#main_div').hide(); 
    $('#main_div').show(5000); 
    } 
    } 
if(i%2==0) 
{ 
    $("#caption1").hide(); 
    $("#caption1").fadeIn(1000); 
    $('#main_div').hide(); 
    $('#main_div').show(5000); 
} 

同時顯示動畫,我想動畫的完成時間?

舉例:

我設置它顯示5secs的動畫。

顯示動畫現在開始。

2秒的動畫完成[3secs剩餘]在這種情況下,我需要在按鈕點擊此完成持續時間[2secs]

??

+0

爲什麼會在動畫完成2秒,當你把它設置爲5? – 2013-04-18 04:37:36

+0

請理解5secs動畫開始[2secs完成3秒剩餘] – Arunkumar 2013-04-18 04:39:24

+0

好吧,據我所知,你需要一個點擊事件監聽器完成2秒的顯示動畫? – mabus44 2013-04-18 04:41:09

回答

1

記下當動畫開始時間:

var animationStarted = new Date(); 
$('#main_div').show(5000); 
.... 

當你需要拿出多少時間已經過去了,取當前時間和減去保存在上一步的時間。

var now = new Date(); 
var elapsed = (now.getTime() - animationStarted.getTime())/1000; 

演示:http://jsfiddle.net/NZGU6/

+0

你甚至可以將'elapsed'計算爲'now - animationStarted'。剩下的就是valueOf。 – lib3d 2013-04-18 06:15:10