国产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
主站蜘蛛池模板: 韩日视频在线观看 | 国产va免费精品 | 骚b视频| 色在线免费视频 | 亚洲精品自产拍在线观看app | 热久久中文字幕 | 青青国产成人久久91 | 国产资源视频在线观看 | 亚洲精品免费视频 | 欧美网站在线看 | 欧美色另类 | 国产一级做a爰片在线看 | 欧洲亚洲欧美国产日本高清 | 国产不卡视频在线播放 | 日韩第三页 | 黄大片在线观看 | 欧美日韩影院 | 国产不卡在线观看 | 国产精品资源在线观看 | 欧美不卡二区 | 精品国产一区二区在线观看 | 韩日视频在线观看 | 青春草国产 | 一区二区久久 | 国产成人精品一区二三区2022 | 色国产精品一区在线观看 | 国产精品久久久久久久久99热 | 伊人婷婷在线 | 欧美亚洲激情 | 欧美性第一页 | 日韩精品一区二区三区在线观看l | 中文字幕欧美在线 | 91亚洲国产成人久久精品网站 | 成人无码一区二区片 | 成人99国产精品一级毛片 | 成人午夜精品 | 香蕉久久网| 色综合91久久精品中文字幕 | 视频在线一区 | 欧美人与动性xxxxx杂性 | 精品一区二区三区亚洲 |