2015-09-28 60 views
3

我想打一個JavaScript時鐘將開始當過用戶登錄並運行,直到用戶註銷的Javascript登錄時間時鐘

currentlty我與setInterval做之後每一秒調用它加1秒到前一次。有沒有更好的解決方案?

注:時鐘也應該工作,即使用戶刷新瀏覽器

+2

如果剛性JS,那麼你必須使用本地存儲,但我建議最好使用服務器端腳本.. –

回答

2

我要重申羅希特的評論,但一個替代JS soloution我會使用JavaScript的Date對象。 喜歡的東西下面:

var logInTime = new Date(); 

var logoutTime = new Date(); 

var loggedInLength = logoutTime.getTime() - logInTime.getTime(); 
var seconds = loggedInLength/1000 
var minutes = seconds/60 
var hours = minutes/60 

只設置登錄時logInTime和註銷

jsFiddle

編輯logoutTime:我錯過了你的關於時鐘通過刷新工作筆記,來實現這一點沒有使用服務器端代碼,您可以按建議使用本地存儲或設置cookie。

document.cookie = 'logintime='+logInTime.getTime() 

看看這個SO回答如何通過名稱檢索一個cookie:Get Cookie By Name