求高手解答计时器
因为我不会JS~所以我直接从网路上的网页撷取网页代码~过滤出我要的功能~代码原功能是~计时5分钟~每5分钟跳出警示视窗~使用者须确认~有确认时间以5分钟为一个单位累计~
没确认网页强制关闭~最后得出总阅读时数~
1.我把每5分钟为一单位的功能去除~因为我目前用不到~
但是我看不懂后面的以5分钟为一单位的总时间累计部分~要如何修改?
2.当离开此页面时~要如何取得当下阅读总时数~让我记录到数据库中?
请高手给点提示~
程序代码:
<script> var isSaved=0; //是否已储存 var iSeconds=0; //阅读秒数 //var iPeriodSec = 300; //?秒后显示提示讯息 var iSaveCheckSec=30; var iGoingSec= 0; //重复读取秒数 var myVar; var cTime; EnableTimer(); function EnableTimer() { myVar = setInterval(function(){Timer()},1000); } function SuspendTimer() { clearInterval(myVar); } function Timer() { iSeconds=iSeconds+1; var minutes = Math.floor(iSeconds / 60); var secs = iSeconds - (minutes * 60); var sTime; //阅读时间 if (secs < 10){ secs = "0" + secs } if (minutes < 10){ minutes = "0" + minutes } sTime= minutes + ":" + secs document.getElementById("TimerText").innerHTML=sTime; //if (iSeconds % iPeriodSec ==0){ // SuspendTimer(); // AddTimeOut(); // DxPCConfirm.Show(); //} }; function CancelTimeOut() { clearTimeout(cTime); }; function AddTimeOut() { cTime=setTimeout(function(){ SaveReadingTime('Normal');} ,30000); }; function SaveReadingTime(sMode) { if (isSaved==0 && iSeconds>=iSaveCheckSec){ if (sMode=='Normal'){ isSaved=1; DxCBSaveReadTime.PerformCallback(sMode + '|' + (iSeconds-iGoingSec)); }else if(sMode=='OnGoing'){ isSaved=0; iGoingSec =iGoingSec + iPeriodSec; DxCBSaveReadTime.PerformCallback(sMode + '|' + iPeriodSec); } } }; window.onbeforeunload = function (evt) { SuspendTimer(); SaveReadingTime('Normal'); } </script> <div> <table> <tr> <td> <span id="ctl00_ContentPlaceHolder_Label1">阅读时间:</span> </td> <td id="TimerText"> </td> </tr> </table> </div>