只是个简单的日历模板,各位可根据需要自行添加需要的功能。该模板更多的是提供了关于年、月、日、月初、月末、星期的获取函数。各位可根据需要自行获取。欢迎提供更简便的方式方法,互相学习提高!谢谢~~
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>日历</title> <style type="text/css"> * {cursor: default; } div {overflow: hidden; } .mainArea {margin: 30px auto 0;border: 1px solid #666;height: 230px;width: 210px;background-color: #eee;font-family: "microsoft yahei"; } .top {height: 30px;background-color: #aaa; } .top span {cursor: default; } .top span:hover {background-color: red; } .top .selectFlagLeft span, .top .selectFlagRight span {display: block;float: left;line-height: 30px;text-align: center; } .top span.selectFlag {width: 50%; } .top span.selectYear {width: 60px;height: 30px;display: block;float: left;text-align: center;line-height: 30px;cursor: pointer; } .top span.selectMonth {display: block;height: 30px;margin-left: 60px;text-align: center;line-height: 30px;cursor: pointer; } .top .selectFlagLeft {float: left;width: 60px;height: 30px; } .top .selectFlagRight {float: right;width: 60px;height: 30px;margin-top: -30px; } .top .selectMiddle {height: 30px;margin-left: 60px;margin-right: 60px; } .dayTb {width: 100%;text-align: center;border-bottom: 1px solid #fff;~display: none; } .dayTb thead {background-color: #675;color: #eee; } .dayTb tr {height: 24px; } .dayTb td {border: 1px solid #ddd;cursor: default;background-color: #dadada;font-weight: 100;color: rgba(102, 102, 102, 0.6); } /* .dayTb td:hover, */ .dayTb td.currentMonth:hover, .dayTb td.currentMonth.currentDay:hover, .dayTb td.currentMonth.week:hover {background-color: #0fa; } .dayTb td.currentMonth {background-color: #c0f0f0;color: #60f; } .dayTb td.currentMonth.currentDay {color: #f06; } .dayTb td.currentMonth.week {color: #00a080; } .footer {line-height: 27px;text-align: right;padding-right: 5px; } .footer span {border: 1px solid #bbb;padding: 2px 5px;font-size: 12px; } .selectYears {height: 168px;width: 100%;background-color: #333;text-align: center;display: none; } .selectYears {color: #fff;margin: 0;padding: 0; } .selectYears .contentYears span {font-size: 16px;padding: 7px 0;width: 25%;display: block;float: left; } .selectYears span:hover {background-color: red; } .selectFooter span{padding: 0 6px; } .selectYears .returnPage {font-size: 12px;display: block;float: right;margin-top: -22px;margin-right: 10px;padding: 2px 6px; } </style></head><body> <div class="mainArea"> <div class="top"><div class="selectFlagLeft"><span class="selectFlag" id="prevYear">◄</span><span class="selectFlag" id="prevMonth"><</span></div><div class="selectMiddle"><span class="selectYear" id="selectYear"></span><span class="selectMonth" id="selectMonth"></span></div><div class="selectFlagRight"><span class="selectFlag" id="nextMonth">></span><span class="selectFlag" id="nextYear">►</span></div> </div> <table class="dayTb" id="dayTb" border=0 cellspacing=0 cellpadding=0><thead><tr> <th>日</th> <th>一</th> <th>二</th> <th>三</th> <th>四</th> <th>五</th> <th>六</th></tr></thead><tbody><tr> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td></tr><tr> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td></tr><tr> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td></tr><tr> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td></tr><tr> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td></tr><tr> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td> <td></td></tr></tbody> </table> <div class="selectYears"><div class="contentYears"><span>2015</span><span>2014</span><span>2013</span><span>2012</span><span>2011</span><span>2010</span><span>2009</span><span>2008</span><span>2007</span><span>2006</span><span>2005</span><span>2004</span><span>2003</span><span>2002</span><span>2001</span><span>2000</span></div><div class="selectFooter"><span>←</span><span>→</span></div><span class="returnPage">收起</span> </div> <div class="footer"><span>今日</span><span>清除</span><span>确定</span><span>返回</span> </div> </div> <script type="text/javascript"> window.onload = function() { /*** 时间数组*/ Date.prototype.toArray = function(){ var now = this;var dateAry = Array();dateAry[0] = now.getFullYear();dateAry[1] = (now.getMonth()+1<10?"0":"")+(now.getMonth()+1);dateAry[2] = (now.getDate()<10?"0":"")+now.getDate();dateAry[3] = (now.getHours()<10?"0":"")+now.getHours();dateAry[4] = (now.getMinutes()<10?"0":"")+now.getMinutes();dateAry[5] = (now.getSeconds()<10?"0":"")+now.getSeconds();dateAry[6] = now.getDay();return dateAry;}; /*** 当月最大天数*/ function getMaxDayOfMonth(iYear, iMonth) {var newDate = new Date(iYear,iMonth,0);var dateAry = newDate.toArray();return parseInt(dateAry[2]); }; /*** 当月第一天是周几*/ function getFirstDay(iYear, iMonth) {var newDate = new Date(iYear,iMonth,1);var dateAry = newDate.toArray();return parseInt(dateAry[6]); }; var tdNodes = document.getElementsByTagName("td"); var selectYearNode = document.getElementById("selectYear"); var selectMonthNode = document.getElementById("selectMonth"); var prevYearNode = document.getElementById("prevYear"); var prevMonthNode = document.getElementById("prevMonth");var nextMonthNode = document.getElementById("nextMonth");var nextYearNode = document.getElementById("nextYear");var now = new Date(); var ary = now.toArray(); function changeYearOrMonth(iYearDiff, iMonthDiff) {var currentYear = parseInt(selectYearNode.innerHTML);var currentMonth = parseInt(selectMonthNode.innerHTML);var newDate = new Date(currentYear+iYearDiff,currentMonth+iMonthDiff-1,1);var dateAry = newDate.toArray();insertAllMonth(dateAry[0], dateAry[1]); }; function insertAllMonth(iYear, iMonth) {selectYearNode.innerHTML = iYear;selectMonthNode.innerHTML = iMonth;var firstDay = getFirstDay(iYear, parseInt(iMonth)-1);var maxDay = getMaxDayOfMonth(iYear, iMonth);var prevMonthMaxDay = getMaxDayOfMonth(iYear, parseInt(iMonth)-1);var i = 0;for(i=firstDay;i>0;i--) {tdNodes[i-1].innerHTML = prevMonthMaxDay--;tdNodes[i-1].className = "";}for(i=1+firstDay;i<=maxDay+firstDay;i++) {tdNodes[i-1].innerHTML = i-firstDay;if(iYear == ary[0] && iMonth == ary[1] && i-firstDay == ary[2]) { tdNodes[i-1].className = "currentMonth currentDay";}else if(i%7 < 2){ tdNodes[i-1].className = "currentMonth week";}else { tdNodes[i-1].className = "currentMonth";}}var one = 1;for(;i<=tdNodes.length;i++) {tdNodes[i-1].innerHTML = one++;tdNodes[i-1].className = "";} }; insertAllMonth(ary[0], ary[1]); prevYearNode.onclick = function() {changeYearOrMonth(-1,0); }; prevMonthNode.onclick = function() {changeYearOrMonth(0,-1); }; nextMonthNode.onclick = function() {changeYearOrMonth(0,1); }; nextYearNode.onclick = function() {changeYearOrMonth(1,0); };}; </script></body></html>