filesbox/web/dist/js/calendar/index.js

2 lines
17 KiB
JavaScript
Raw Normal View History

2024-07-26 06:10:54 +00:00
var doc=window.document,Calendar=function(t){"use strict";var e={monthNames:["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"],dayNames:["\u5468\u65E5","\u5468\u4E00","\u5468\u4E8C","\u5468\u4E09","\u5468\u56DB","\u5468\u4E94","\u5468\u516D"],dayLongNames:["\u661F\u671F\u65E5","\u661F\u671F\u4E00","\u661F\u671F\u4E8C","\u661F\u671F\u4E09","\u661F\u671F\u56DB","\u661F\u671F\u4E94","\u661F\u671F\u516D"],holiday:{"1-1":"\u5143\u65E6","2-2":"\u6E7F\u5730\u65E5","2-14":"\u60C5\u4EBA\u8282","3-8":"\u5987\u5973\u8282","3-12":"\u690D\u6811\u8282","3-15":"\u6D88\u8D39\u8005\u6743\u76CA\u65E5","4-1":"\u611A\u4EBA\u8282","4-22":"\u5730\u7403\u65E5","5-1":"\u52B3\u52A8\u8282","5-4":"\u9752\u5E74\u8282","5-12":"\u62A4\u58EB\u8282","5-18":"\u535A\u7269\u9986\u65E5","6-1":"\u513F\u7AE5\u8282","6-5":"\u73AF\u5883\u65E5","6-23":"\u5965\u6797\u5339\u514B\u65E5","6-24":"\u9AA8\u8D28\u758F\u677E\u65E5","7-1":"\u5EFA\u515A\u8282","8-1":"\u5EFA\u519B\u8282","9-3":"\u6297\u6218\u80DC\u5229\u65E5","9-10":"\u6559\u5E08\u8282","10-1":"\u56FD\u5E86\u8282","11-17":"\u5B66\u751F\u65E5","12-1":"\u827E\u6ECB\u75C5\u65E5","12-24":"\u5E73\u5B89\u591C","12-25":"\u5723\u8BDE\u8282"},firstDay:1,weekendDays:[0,6],dateFormat:"yyyy-mm-dd",limitDis:80,weekHandler:"dayThead",monthContainer:"dateUl",toolBar:"timeChoose",parentNode:document.getElementById("calendar"),template:'<div class="pannel" id="timePannel"></div><div class="container"><div class="aside"><header class="timeNow"></header><div class="dateContain"><div class="bigTime"></div><div class="noliDate"></div><div class="goodBad"><div class="gooList"></div><div class="badList"></div></div></div></div><div class="main"><div class="operator"><div class="goPrev"><img height="24" src="/js/calendar/img/left.png" /></div><div class="timeChoose"></div><div class="goNext"><img height="24" src="/js/calendar/img/right.png" /></div></div><div class="datePicker"><div class="dayThead"></div><div class="dateUlContainer"><div class="dateUl"><div class="dateLi"><div class="dayTbody"></div></div></div></div></div></div></div>'};t=t||{};for(var a in e)typeof t[a]=="undefined"&&(t[a]=e[a]);this.attrs=t,this.touchesStart={},this.init()};Calendar.prototype={constructor:Calendar,init:function(){this.render(),this.initEvents(),this.layout(),this.index=0,this._initEd=!0,this._interval=!0,this.offsetValue=this.monthEle.offsetWidth,this.timeNowEle=doc.querySelector(".timeNow"),this.bigTimeEle=doc.querySelector(".bigTime"),this.noliDateEle=doc.querySelector(".noliDate"),this.gooList=doc.querySelector(".gooList"),this.badList=doc.querySelector(".badList"),this.timePannel=doc.getElementById("timePannel"),this.prevMonthEle=doc.querySelector(".prev-month-html"),this.currMonthEle=doc.querySelector(".current-month-html"),this.nextMonthEle=doc.querySelector(".next-month-html"),this.setAside()},render:function(){this.attrs.parentNode.innerHTML=this.attrs.template},setAside:function(t){t=t||new Date;var e=t.getFullYear(),a=t.getMonth(),i=t.getDate(),n=Util.getLunarCalendar(e,a+1,i),r=Util.getSuitAndTaboo(e,a+1,i),s="<i>\u5B9C</i>",h="<i>\u5FCC</i>";this.timeNowEle.innerHTML="<span>"+e+"\u5E74"+(a+1)+"\u6708</span><span>"+this.attrs.dayLongNames[t.getDay()]+"</span>",this.bigTimeEle.innerHTML="<span>"+i+"</span>",this.noliDateEle.innerHTML="<p>"+n.month+n.date+"</p><p>"+Util.getSexagenaryCycle(e)+"\u3010"+Util.getZodiac(e)+"\u3011</p>";for(var o=0,l=r.suit.length;l>o;o++)s+="<span>"+r.suit[o]+"</span>";for(var o=0,l=r.taboo.length;l>o;o++)h+="<span>"+r.taboo[o]+"</span>";this.gooList.innerHTML=s,this.badList.innerHTML=h},initEvents:function(){var t=this,e=this.monthEle=doc.querySelector("."+this.attrs.monthContainer);this.timeChooseEle=doc.querySelector(".timeChoose"),this.goPrev=doc.querySelector(".goPrev"),this.goNext=doc.querySelector(".goNext"),e.addEventListener("mousedown",this._handleTouchStart.bind(this),!1),e.addEventListener("mousemove",this._handleTouchMove.bind(this),!1),e.addEventList