JavaScrpit生日日期
来源:互联网 发布:数据库对接 接口调用 编辑:程序博客网 时间:2024/05/17 06:47
生成日期的Js:
$(function() { var signFun = function() { var monthCN=['一月','二月','三月','四月','伍月','六月','七月','八月','九月','十月','十一月','十二月']; var monthEN=['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec']; var $dateBox = $("#js-qiandao-list"), $currentDate = $(".current-date"), _html = '', myDate = new Date(); $currentDate.text(myDate.getFullYear() + '年' + parseInt(myDate.getMonth() + 1) + '月' + myDate.getDate() + '日'); $("#month_text").html("<span>"+monthCN[myDate.getMonth()]+"</span>"+monthEN[myDate.getMonth()]) /*获取本月第一天是星期几*/ var monthFirst = new Date(myDate.getFullYear(), parseInt(myDate.getMonth()), 1).getDay(); var d = new Date(myDate.getFullYear(), parseInt(myDate.getMonth() + 1), 0); //获取当前月的天数 var totalDay = d.getDate(); //生成日历网格 for (var i = 0; i < 42; i++) { _html += '<li class="fw700"><a ></a></li>' } $dateBox.html(_html) var $dateLi = $dateBox.find("li"); for (var i = 0; i < totalDay; i++) { /*判断星期六与星期日,并给出特殊的颜色*/ var strDate=myDate.getFullYear() + '-' + parseInt(myDate.getMonth() + 1)+"-"+parseInt(i + 1); var strWeek=new Date(strDate).getDay(); if(strWeek==6||strWeek==0){ $dateLi.eq(i + monthFirst).addClass("colorc22820"); } /*计算农历日期*/ var s = GetLunarDay(myDate.getFullYear(), parseInt(myDate.getMonth() + 1), parseInt(i + 1)); if(parseInt(i + 1)!=myDate.getDate()){ $dateLi.eq(i + monthFirst).append("<div class=\"date fw700\">"+parseInt(i + 1)+"<span>"+s+"</span></div>"); }else{ $dateLi.eq(i + monthFirst).append("<div class=\"date fw700\"><div class=\"yuan1\"></div>"+parseInt(i + 1)+"<span>"+s+"</span></div>"); } } }();})
公历转农历的js:
/*获取当前农历*/function showCal() {var D = new Date();var yy = D.getFullYear();var mm = D.getMonth() + 1;var dd = D.getDate();var ww = D.getDay();var ss = parseInt(D.getTime() / 1000);if (yy < 100)yy = "19" + yy;return GetLunarDay(yy, mm, dd);}// 定义全局变量var CalendarData = new Array(100);var madd = new Array(12);var tgString = "甲乙丙丁戊己庚辛壬癸";var dzString = "子丑寅卯辰巳午未申酉戌亥";var numString = "一二三四五六七八九十";var monString = "正二三四五六七八九十冬腊";var weekString = "日一二三四五六";var sx = "鼠牛虎兔龙蛇马羊猴鸡狗猪";var cYear, cMonth, cDay, TheDate;CalendarData = new Array(0xA4B, 0x5164B, 0x6A5, 0x6D4, 0x415B5, 0x2B6, 0x957,0x2092F, 0x497, 0x60C96, 0xD4A, 0xEA5, 0x50DA9, 0x5AD, 0x2B6, 0x3126E,0x92E, 0x7192D, 0xC95, 0xD4A, 0x61B4A, 0xB55, 0x56A, 0x4155B, 0x25D,0x92D, 0x2192B, 0xA95, 0x71695, 0x6CA, 0xB55, 0x50AB5, 0x4DA, 0xA5B,0x30A57, 0x52B, 0x8152A, 0xE95, 0x6AA, 0x615AA, 0xAB5, 0x4B6, 0x414AE,0xA57, 0x526, 0x31D26, 0xD95, 0x70B55, 0x56A, 0x96D, 0x5095D, 0x4AD,0xA4D, 0x41A4D, 0xD25, 0x81AA5, 0xB54, 0xB6A, 0x612DA, 0x95B, 0x49B,0x41497, 0xA4B, 0xA164B, 0x6A5, 0x6D4, 0x615B4, 0xAB6, 0x957, 0x5092F,0x497, 0x64B, 0x30D4A, 0xEA5, 0x80D65, 0x5AC, 0xAB6, 0x5126D, 0x92E,0xC96, 0x41A95, 0xD4A, 0xDA5, 0x20B55, 0x56A, 0x7155B, 0x25D, 0x92D,0x5192B, 0xA95, 0xB4A, 0x416AA, 0xAD5, 0x90AB5, 0x4BA, 0xA5B, 0x60A57,0x52B, 0xA93, 0x40E95);madd[0] = 0;madd[1] = 31;madd[2] = 59;madd[3] = 90;madd[4] = 120;madd[5] = 151;madd[6] = 181;madd[7] = 212;madd[8] = 243;madd[9] = 273;madd[10] = 304;madd[11] = 334;function GetBit(m, n) {return (m >> n) & 1;}// 农历转换function e2c() {TheDate = (arguments.length != 3) ? new Date() : new Date(arguments[0],arguments[1], arguments[2]);var total, m, n, k;var isEnd = false;var tmp = TheDate.getYear();if (tmp < 1900) {tmp += 1900;}total = (tmp - 1921) * 365 + Math.floor((tmp - 1921) / 4)+ madd[TheDate.getMonth()] + TheDate.getDate() - 38;if (TheDate.getYear() % 4 == 0 && TheDate.getMonth() > 1) {total++;}for (m = 0;; m++) {k = (CalendarData[m] < 0xfff) ? 11 : 12;for (n = k; n >= 0; n--) {if (total <= 29 + GetBit(CalendarData[m], n)) {isEnd = true;break;}total = total - 29 - GetBit(CalendarData[m], n);}if (isEnd)break;}cYear = 1921 + m;cMonth = k - n + 1;cDay = total;if (k == 12) {if (cMonth == Math.floor(CalendarData[m] / 0x10000) + 1) {cMonth = 1 - cMonth;}if (cMonth > Math.floor(CalendarData[m] / 0x10000) + 1) {cMonth--;}}}/** * 显示农历月日 * @returns {String} */function GetcDateString() {var tmp = "";/* 显示农历年:( 如:甲午(马)年 ) *//* * tmp+=tgString.charAt((cYear-4)%10); tmp+=dzString.charAt((cYear-4)%12); * tmp+="("; tmp+=sx.charAt((cYear-4)%12); tmp+=")年 "; */if (cMonth < 1) {tmp += "(闰)";tmp += monString.charAt(-cMonth - 1);} else {tmp += monString.charAt(cMonth - 1);}tmp += "月";tmp += (cDay < 11) ? "初" : ((cDay < 20) ? "十" : ((cDay < 30) ? "廿" : "三十"));if (cDay % 10 != 0 || cDay == 10) {tmp += numString.charAt((cDay - 1) % 10);}return tmp;}/** * 显示农历日期 * @returns {String} */function GetcDateDayString() {var tmp = "";/* 显示农历年:( 如:甲午(马)年 ) *//* * tmp+=tgString.charAt((cYear-4)%10); tmp+=dzString.charAt((cYear-4)%12); * tmp+="("; tmp+=sx.charAt((cYear-4)%12); tmp+=")年 "; */tmp += (cDay < 11) ? "初" : ((cDay < 20) ? "十" : ((cDay < 30) ? "廿" : "三十"));if (cDay % 10 != 0 || cDay == 10) {tmp += numString.charAt((cDay - 1) % 10);}return tmp;}function GetLunarDay(solarYear, solarMonth, solarDay) {// solarYear = solarYear<1900?(1900+solarYear):solarYear;if (solarYear < 1921 || solarYear > 2020) {return "";} else {solarMonth = (parseInt(solarMonth) > 0) ? (solarMonth - 1) : 11;e2c(solarYear, solarMonth, solarDay);return GetcDateDayString();}}
jsp界面:
以下li用来存放日,具体由js动态生成。
<span style="white-space:pre"></span><ul id="js-qiandao-list"><li class="fw700"><a ></a></li><li class="fw700"><a ></a></li><li class="fw700"><a ></a></li><li class="fw700"><a ></a></li><li class="fw700"><div class="date fw700">1<span>廿四</span></div></li><li class="fw700 colorc22820"><div class="date fw700">2<span>廿五</span></div></li><li class="fw700 colorc22820"><div class="date fw700">3<span>廿六</span></div></li></ul>
效果:
0 0
- JavaScrpit生日日期
- 知道生日算日期
- 选择日期(如生日)
- excel 身份证提取生日日期
- JavaScrpit Chart
- javaScrpit基本功能
- VB生日日期并判断是不是星期天
- Oracle日期操作,生日,工龄等
- 注册界面生日(日期)js
- 根据身份证号码更新生日日期存储过程
- HDU 1201 18岁生日 【日期】
- 【Python】Python_learning5:使用python计算生日日期
- iOS-选择生日,初始化日期选择器
- HDU1201 18岁生日【日期计算】
- 日期格式转换方法(注册生日)
- 生日日数(java处理日期,日期加法)
- 生日
- 生日
- 图的遍历
- JAVA 调用Redis接口
- GEF中的锚点Anchor
- 计算几何学习笔记之多边形
- FTP Install
- JavaScrpit生日日期
- 多态与泛型
- Oracle —— to_date() 与 to_char() 日期和字符串转换
- Android快速开发系列 10个常用工具类
- 改eclipse 中svn账号
- [编码] 无BOM的UTF8
- 计算机视觉、机器学习相关领域论文和源代码大集合
- Tcl -- lassign
- 基于链表法的Hash算法简易实现