实例介绍
【实例简介】十进制、UTC转换等
【实例截图】
【核心代码】
<html> <head> <script type="text/javascript"> window.resizeTo(780, 180); </script> <HTA:APPLICATION ID="utctime" APPLICATIONNAME="utctime" BORDER="dialog" BORDERSTYLE="normal" INNERBORDER="no" SCROLL="no" CAPTION="yes" ICON="" MAXIMIZEBUTTON="no" MINIMIZEBUTTON="no" SHOWINTASKBAR="yes" SINGLEINSTANCE="no" SYSMENU="yes" VERSION="1.0"/> <title>时间生成器</title> <style type="text/css"> body { padding: 0; background: #ddd; } .text-year { width: 40px; } .text-cell { width: 20px; } </style> <script> /****************************************************************************** 函数名称:toHex 函数功能:将15位以内(含15)的十进制数转换为十六进制数 参数说明:sString-待转换字符串 返回值 :null - 参数非法或异常 sResult - 转换结果 作者 :朱磊鑫 00110907 2007-11-27 ******************************************************************************/ function toHex( sString ) { if(null == sString) { return null; } if(15 < sString.length)//字符串超长,15位以后整数转换不准确。 { return null; } var sInteger = /^(0|([1-9] [0-9]*))$/;//整数正则表达式,不包含0开头。 if(!sInteger.test(sString)) { return null; } var iValue = parseInt(sString); if(0 > iValue) { return null; } if(0 == iValue) { return null; } var hexValue = [];//用于保存中间数。 var i = 0; //hexValue的写位置。 var iQuotient; //商 var iRemainder; //余数 while(true) { iQuotient = Math.floor(iValue/16);//商 iRemainder = iValue%16; //余数 if(iQuotient < 16) //商小于16,为最后一次运算。需要记录商。 { switch(iRemainder) { case 0: hexValue[i ] = "0";break; case 1: hexValue[i ] = "1";break; case 2: hexValue[i ] = "2";break; case 3: hexValue[i ] = "3";break; case 4: hexValue[i ] = "4";break; case 5: hexValue[i ] = "5";break; case 6: hexValue[i ] = "6";break; case 7: hexValue[i ] = "7";break; case 8: hexValue[i ] = "8";break; case 9: hexValue[i ] = "9";break; case 10:hexValue[i ] = "A";break; case 11:hexValue[i ] = "B";break; case 12:hexValue[i ] = "C";break; case 13:hexValue[i ] = "D";break; case 14:hexValue[i ] = "E";break; case 15:hexValue[i ] = "F";break; default:return null;//异常 } switch(iQuotient) { case 0: hexValue[i ] = "0";break; case 1: hexValue[i ] = "1";break; case 2: hexValue[i ] = "2";break; case 3: hexValue[i ] = "3";break; case 4: hexValue[i ] = "4";break; case 5: hexValue[i ] = "5";break; case 6: hexValue[i ] = "6";break; case 7: hexValue[i ] = "7";break; case 8: hexValue[i ] = "8";break; case 9: hexValue[i ] = "9";break; case 10:hexValue[i ] = "A";break; case 11:hexValue[i ] = "B";break; case 12:hexValue[i ] = "C";break; case 13:hexValue[i ] = "D";break; case 14:hexValue[i ] = "E";break; case 15:hexValue[i ] = "F";break; default:return null;//异常 } var sResult = Antitone(hexValue); return sResult;//数组反序为结果 } else //继续除 { iValue = iQuotient;//保存商 switch(iRemainder) //保存余数 { case 0: hexValue[i ] = "0";break; case 1: hexValue[i ] = "1";break; case 2: hexValue[i ] = "2";break; case 3: hexValue[i ] = "3";break; case 4: hexValue[i ] = "4";break; case 5: hexValue[i ] = "5";break; case 6: hexValue[i ] = "6";break; case 7: hexValue[i ] = "7";break; case 8: hexValue[i ] = "8";break; case 9: hexValue[i ] = "9";break; case 10:hexValue[i ] = "A";break; case 11:hexValue[i ] = "B";break; case 12:hexValue[i ] = "C";break; case 13:hexValue[i ] = "D";break; case 14:hexValue[i ] = "E";break; case 15:hexValue[i ] = "F";break; default:return null;//异常 } } } } function Antitone( arrResult ) { if(null == arrResult) { return null; } var iLength = arrResult.length; var sResult = ""; for(var i=iLength-1;i>=0;i--) { sResult = sResult.concat(arrResult[i]);//字符串合并出错! } return sResult; } function getHexTime(bIfNow) { var iTime; if(!bIfNow) { //时间校验 var sYear = document.getElementById("1").value; var sMonth = document.getElementById("2").value; var sDay = document.getElementById("3").value; var sHour = document.getElementById("4").value; var sMinute = document.getElementById("5").value; var sSecond = document.getElementById("6").value; var iYear = parseInt(sYear,10); var iMonth = parseInt(sMonth,10) - 1; var iDay = parseInt(sDay,10); var iHour = parseInt(sHour,10); var iMinute = parseInt(sMinute,10); var iSecond = parseInt(sSecond,10); var oTime = new Date(iYear, iMonth, iDay, iHour, iMinute, iSecond, 0); //alert("年:" iYear "\n月:" iMonth "\n日:" iDay "\n时:" iHour "\n分:" iMinute "\n秒:" iSecond); if (!isNaN(oTime)){ iTime = oTime.getTime()/1000; } else{ iTime=0; } } else { var oTimeNow = new Date(); iTime = oTimeNow.getTime()/1000; } iTime = Math.floor(iTime); //iTime = toHex(iTime); if(null == iTime) { alert("非法时间,请重新输入。"); return; } document.getElementById("result").value = iTime; clipboardData.setData('text', iTime.toString()); alert("十进制格式时间:" iTime " 已经拷贝到剪贴板中。"); } function checkTime(textId) { var oText = document.getElementById(textId); if(oText.value.toString().length == oText.getAttribute("maxlength")) { document.getElementById(textId).blur(); if( textId < 6) { var newId = parseInt(textId) 1; document.getElementById(newId).focus(); } else { getHexTime(false); document.getElementById("result").focus(); } } } function focused(Id) { document.getElementById(Id).select(); } function transTime() { var iTime = parseInt(document.getElementById('7').value, 10); var oDate = new Date(); oDate.setTime(iTime * 1000); if (!isNaN(oDate)) { var sYear = oDate.getFullYear(); var sMonth = oDate.getMonth() 1; var sDate = oDate.getDate(); var sHour = oDate.getHours(); var sMinute = oDate.getMinutes(); var sSecond = oDate.getSeconds(); var sTime = sYear "-" addZero(sMonth) "-" addZero(sDate) " " addZero(sHour) ":" addZero(sMinute) ":" addZero(sSecond); document.getElementById('8').value = sTime; clipboardData.setData('text', sTime); alert("YYYY-MM-DD HH:MM:SS格式时间:" sTime " 已经拷贝到剪贴板中。"); } } function addZero(ii) { if (ii < 10 && ii >=0) { return "0" ii; } else { return ii; } } </script> </head> <body> <input type="button" value="当前时间" onclick="getHexTime(true);"> <br><br> <span>请输入时间:</span> <input type="text" class="text-year" size="1" maxlength="4" id="1" onfocus="focused('1')" onkeyup="checkTime('1');"></input><span>年</span> <input type="text" class="text-cell" size="1" maxlength="2" id="2" onfocus="focused('2')" onkeyup="checkTime('2');"></input><span>月</span> <input type="text" class="text-cell" size="1" maxlength="2" id="3" onfocus="focused('3')" onkeyup="checkTime('3');"></input><span>日</span> <input type="text" class="text-cell" size="1" maxlength="2" id="4" onfocus="focused('4')" onkeyup="checkTime('4');"></input><span>时</span> <input type="text" class="text-cell" size="1" maxlength="2" id="5" onfocus="focused('5')" onkeyup="checkTime('5');"></input><span>分</span> <input type="text" class="text-cell" size="1" maxlength="2" id="6" onfocus="focused('6')" onkeyup="checkTime('6');"></input><span>秒</span> <input type="button" value="计算时间" onclick="getHexTime(false);"> <span>十进制表示</span> <input type="text" maxlength="15" id="result" class="text-field"></input> <p><p> <span>请输入UTC秒数:</span> <input type="text" maxlength="10" id="7" class="text-field"/> <input type="button" value="转换时间" onclick="transTime();"/> <input type="text" maxlength="19" id="8" class="text-field"/> </body> </html>
好例子网口号:伸出你的我的手 — 分享!
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论