国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

jQuery+localStorage實現計時器

來源:懂視網 責編:小采 時間:2020-11-27 19:59:41
文檔

jQuery+localStorage實現計時器

jQuery+localStorage實現計時器:這次給大家帶來jQuery+localStorage實現計時器,jQuery+localStorage實現計時器的注意事項有哪些,下面就是實戰案例,一起來看一下。前言在HTML5中,新加入了一個localStorage特性,這個特性主要是用來作為本地存儲來使用的,解決了cookie存儲空間不足
推薦度:
導讀jQuery+localStorage實現計時器:這次給大家帶來jQuery+localStorage實現計時器,jQuery+localStorage實現計時器的注意事項有哪些,下面就是實戰案例,一起來看一下。前言在HTML5中,新加入了一個localStorage特性,這個特性主要是用來作為本地存儲來使用的,解決了cookie存儲空間不足
這次給大家帶來jQuery+localStorage實現計時器,jQuery+localStorage實現計時器的注意事項有哪些,下面就是實戰案例,一起來看一下。

前言

在HTML5中,新加入了一個localStorage特性,這個特性主要是用來作為本地存儲來使用的,解決了cookie存儲空間不足的問題(cookie中每條cookie的存儲空間為4k),localStorage中一般瀏覽器支持的是5M大小,這個在不同的瀏覽器中localStorage會有所不同。

本文主要介紹了關于jQuery+localStorage實現簡易計時器的相關內容,分享出來供大家參考學習,下面話不多說了,來一起看看詳細的介紹吧。

原型

需求

1.關閉瀏覽器時時間繼續運行

2.刷新時保持當前狀態

3.結束時間保存在客戶端

示例代碼

 <p class="wrapper">
 <p class="app">
 <p class="container stopwatch"> 
 <p class="clock inactive z-depth-1">
 <span>0:00:00</span>
 <!-- <p class="overlay waves-effect"></p>-->
 </p> 
 <form>
 <a id="stopwatch-btn-start" class="waves-effect waves-teal btn-flat">開始</a>
 </form> 
 </p>
 </p>
 </p>
<script> 
 // Stopwatch
var stopwatchInterval = 0; // The interval for our loop.循環的間隔。 
var stopwatchClock = $(".container.stopwatch").find(".clock"),
 stopwatchDigits = stopwatchClock.find('span');
// 檢查前一個會話是否在秒表運行時結束。 
// 如果是的話,按時間重新開始。 
//即 關閉瀏覽器,點擊開始,在后臺保持計時的狀態
if(Number(localStorage.stopwatchBeginingTimestamp) && Number(localStorage.stopwatchRunningTime)){
 var runningTime = Number(localStorage.stopwatchRunningTime) + new Date().getTime() - Number(localStorage.stopwatchBeginingTimestamp);
 localStorage.stopwatchRunningTime = runningTime;
 startStopwatch();
}
//如果前一個會話有運行時間,就把它寫在時鐘上。
// 如果沒有初始化為0。 
//即結束時不可刷新
if(localStorage.stopwatchRunningTime){
 stopwatchDigits.text(returnFormattedToMilliseconds(Number(localStorage.stopwatchRunningTime)));
}
else{
 localStorage.stopwatchRunningTime = 0;
}
 /* 實現開始結束 */
 $("#stopwatch-btn-start").toggle(function() {
 $(this).text ('開始').css("background", "#3bb4f2");
 if(stopwatchClock.hasClass('inactive')){
 startStopwatch()
 } 
 }, function() { 
 $(this).text ('結束').css("background", "red");
 pauseStopwatch();
 }) 
// Pressing the clock will pause/unpause the stopwatch.
//按下暫停/恢復的時鐘秒表
/*stopwatchClock.on('click',function(){
 if(stopwatchClock.hasClass('inactive')){
 startStopwatch()
 }
 else{
 pauseStopwatch();
 }
});*/
/*開始計時*/
function startStopwatch(){
 // 防止多個間隔同時進行。 
 clearInterval(stopwatchInterval);
 var startTimestamp = new Date().getTime(),
 runningTime = 0;
 localStorage.stopwatchBeginingTimestamp = startTimestamp;
 // 應用程序還記得上一次會話運行了多長時間。 
 if(Number(localStorage.stopwatchRunningTime)){
 runningTime = Number(localStorage.stopwatchRunningTime);
 }
 else{
 localStorage.stopwatchRunningTime = 1;
 }
 // 每隔100ms重新計算運行時間,計算公式是 
 // 當你上次啟動時鐘+上次運行時間 
 stopwatchInterval = setInterval(function () {
 var stopwatchTime = (new Date().getTime() - startTimestamp + runningTime);
 stopwatchDigits.text(returnFormattedToMilliseconds(stopwatchTime));
 }, 100);
 stopwatchClock.removeClass('inactive');
}
/*停止計時*/
function pauseStopwatch(){
 // 停止計時 
 clearInterval(stopwatchInterval);
 if(Number(localStorage.stopwatchBeginingTimestamp)){
 // 計算運行時間。 
 // 新的運行時間=上次運行時間+現在-最后一次啟動 
 var runningTime = Number(localStorage.stopwatchRunningTime) + new Date().getTime() - Number(localStorage.stopwatchBeginingTimestamp);
 localStorage.stopwatchBeginingTimestamp = 0;
 localStorage.stopwatchRunningTime = runningTime;
 stopwatchClock.addClass('inactive');
 }
}
// 重置.
/*function resetStopwatch(){
 clearInterval(stopwatchInterval);
 stopwatchDigits.text(returnFormattedToMilliseconds(0));
 localStorage.stopwatchBeginingTimestamp = 0;
 localStorage.stopwatchRunningTime = 0;
 stopwatchClock.addClass('inactive');
}
*/
function returnFormattedToMilliseconds(time){
 var 
 seconds = Math.floor((time/1000) % 60),
 minutes = Math.floor((time/(1000*60)) % 60),
 hours = Math.floor((time/(1000*60*60)) % 24);
 seconds = seconds < 10 ? '0' + seconds : seconds;
 minutes = minutes < 10 ? '0' + minutes : minutes;
 return hours + ":" + minutes + ":" + seconds;
}
</script>

相信看了本文案例你已經掌握了方法,更多精彩請關注Gxl網其它相關文章!

推薦閱讀:

jQuery向動態列表添加新元素

實用的jQuery抽屜式在線客服

怎么使用jQuery選中并且操作table

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

jQuery+localStorage實現計時器

jQuery+localStorage實現計時器:這次給大家帶來jQuery+localStorage實現計時器,jQuery+localStorage實現計時器的注意事項有哪些,下面就是實戰案例,一起來看一下。前言在HTML5中,新加入了一個localStorage特性,這個特性主要是用來作為本地存儲來使用的,解決了cookie存儲空間不足
推薦度:
標簽: 計時器 秒表 計時
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 视频在线观看国产 | 国产黄 | 国产在线精品一区二区三区不卡 | 欧美日韩亚洲一区 | 久久91精品国产91久久户 | 久久精品国产一区二区三区日韩 | 国产免费高清视频在线观看不卡 | 欧美极品欧美精品欧美视频 | 黄色免费一级视频 | 国内精品伊人久久久久 | 777久久成人影院 | 久久91精品国产91久久跳舞 | 精品久久一区二区三区 | 亚洲首页在线观看 | 美女一级a毛片免费观看 | 国产人澡人澡澡澡人碰视频 | 91麻精品国产91久久久久 | 在线播放精品一区二区啪视频 | 久久精品国产亚洲精品2020 | 欧美高清一区二区三区欧美 | 欧美精品一区二区三区久久 | 国产精品www | 91精品国产色综合久久 | 毛片福利视频 | 日本精品久久久一区二区三区 | 韩日免费视频 | 久久精品一区二区影院 | 九九精品免视看国产成人 | 精品成人一区二区 | 又大又硬又爽 | 国产精品视频免费看 | 亚洲欧洲国产经精品香蕉网 | 国产精品网站在线进入 | 午夜欧美在线 | 国产女同一区二区三区五区 | 日本一区二区三区精品视频 | 国产日韩中文字幕 | 欧美激情91 | 国内精品视频在线观看 | 伊人久久中文字幕久久cm | 国产一区精品 |