标签
标签:模板
依赖页面
events={
0:["测试事件1",2021,12,1,9999,99,99],
1:["测试事件2",2021,12,4,2021,12,15]
}
eventCalendarTodayInBeiJing=new Date(new Date().getTime()+(8+new Date().getTimezoneOffset()/60)*60*60*1000)
ECD=document.getElementsByClassName("ECD")
eventCalendarYearCell=document.getElementById("eventCalendarYear")
eventCalendarMonthCell=document.getElementById("eventCalendarMonth")
eventCalendarStart=eventCalendarTodayInBeiJing.getTime()
eventCalendarYear=new Date(eventCalendarStart).getFullYear()
eventCalendarMonth=new Date(eventCalendarStart).getMonth()+1
eventCalendarChange()
document.getElementById("eventCalendarYearP").onclick=function(){
eventCalendarYear++
eventCalendarChange()
}
document.getElementById("eventCalendarYearM").onclick=function(){
eventCalendarYear--
eventCalendarChange()
}
document.getElementById("eventCalendarMonthP").onclick=function(){
if(eventCalendarMonth==12){
eventCalendarMonth=1
eventCalendarYear++
}
else eventCalendarMonth++
eventCalendarChange()
}
document.getElementById("eventCalendarMonthM").onclick=function(){
if(eventCalendarMonth==1){
eventCalendarMonth=12
eventCalendarYear--
}
else eventCalendarMonth--
eventCalendarChange()
}
function eventCalendarChange(){
for(i=0;i<ECD.length;i++){
ECD[i].removeAttribute("title")
ECD[i].style.backgroundColor="transparent"
ECD[i].style.color="inherit"
ECD[i].style.fontWeight="normal"
}
eventCalendarFirstDay=new Date(eventCalendarYear+"/"+eventCalendarMonth+"/1").getDay()
if(eventCalendarFirstDay==0){
eventCalendarFirstDay=7
}
eventCalendarThisMonthMax=eventCalendarMonthMax(eventCalendarMonth,eventCalendarYear)
eventCalendarLastMonthMax=eventCalendarMonthMax(eventCalendarMonth-1,eventCalendarYear)
for(i=1;i+eventCalendarThisMonthMax+eventCalendarFirstDay-1<ECD.length;i++){
for(j=0;events[j];j++){
if(eventCalendarNextYearOverflow()==events[j][1]&&eventCalendarNextMonthOverflow()==events[j][2]&&i==events[j][3]){
if(ECD[i+eventCalendarThisMonthMax+eventCalendarFirstDay-1].style.backgroundColor=="pink"||ECD[i+eventCalendarThisMonthMax+eventCalendarFirstDay-1].style.backgroundColor=="lemonchiffon"){
ECD[i+eventCalendarThisMonthMax+eventCalendarFirstDay-1].style.backgroundColor="lemonchiffon"
}
else{
ECD[i+eventCalendarThisMonthMax+eventCalendarFirstDay-1].style.backgroundColor="palegreen"
}
ECD[i+eventCalendarThisMonthMax+eventCalendarFirstDay-1].title+="\n"+weighAnchor(j)+events[j][0]
continue
}
else if(eventCalendarNextYearOverflow()==events[j][4]&&eventCalendarNextMonthOverflow()==events[j][5]&&i==events[j][6]){
if(ECD[i+eventCalendarThisMonthMax+eventCalendarFirstDay-1].style.backgroundColor=="palegreen"||ECD[i+eventCalendarThisMonthMax+eventCalendarFirstDay-1].style.backgroundColor=="lemonchiffon"){
ECD[i+eventCalendarThisMonthMax+eventCalendarFirstDay-1].style.backgroundColor="lemonchiffon"
}
else{
ECD[i+eventCalendarThisMonthMax+eventCalendarFirstDay-1].style.backgroundColor="pink"
}
ECD[i+eventCalendarThisMonthMax+eventCalendarFirstDay-1].title+="\n结束 "+events[j][0]
continue
}
}
if(eventCalendarNextYearOverflow()==eventCalendarTodayInBeiJing.getFullYear()&&eventCalendarNextMonthOverflow()==eventCalendarTodayInBeiJing.getMonth()+1&&i==eventCalendarTodayInBeiJing.getDate()){
ECD[i+eventCalendarThisMonthMax+eventCalendarFirstDay-1].style.backgroundColor="lightskyblue"
ECD[i+eventCalendarThisMonthMax+eventCalendarFirstDay-1].style.fontWeight="bold"
ECD[i+eventCalendarThisMonthMax+eventCalendarFirstDay-1].title+="\n今天"
}
ECD[i+eventCalendarThisMonthMax+eventCalendarFirstDay-1].style.color="#999"
ECD[i+eventCalendarThisMonthMax+eventCalendarFirstDay-1].innerHTML=i
}
for(i=eventCalendarLastMonthMax,j=1;i>eventCalendarLastMonthMax-eventCalendarFirstDay;i--,j++){
for(k=0;events[k];k++){
if(eventCalendarLastYearInsufficient()==events[k][1]&&eventCalendarLastMonthInsufficient()==events[k][2]&&i==events[k][3]){
if(ECD[eventCalendarFirstDay-j].style.backgroundColor=="pink"||ECD[eventCalendarFirstDay-j].style.backgroundColor=="lemonchiffon"){
ECD[eventCalendarFirstDay-j].style.backgroundColor="lemonchiffon"
}
else{
ECD[eventCalendarFirstDay-j].style.backgroundColor="palegreen"
}
ECD[eventCalendarFirstDay-j].title+="\n"+weighAnchor(k)+events[k][0]
continue
}
else if(eventCalendarLastYearInsufficient()==events[k][4]&&eventCalendarLastMonthInsufficient()==events[k][5]&&i==events[k][6]){
if(ECD[eventCalendarFirstDay-j].style.backgroundColor=="palegreen"||ECD[eventCalendarFirstDay-j].style.backgroundColor=="lemonchiffon"){
ECD[eventCalendarFirstDay-j].style.backgroundColor="lemonchiffon"
}
else{
ECD[eventCalendarFirstDay-j].style.backgroundColor="pink"
}
ECD[eventCalendarFirstDay-j].title+="\n结束 "+events[k][0]
continue
}
}
if(eventCalendarLastYearInsufficient()==eventCalendarTodayInBeiJing.getFullYear()&&eventCalendarLastMonthInsufficient()==eventCalendarTodayInBeiJing.getMonth()+1&&i==eventCalendarTodayInBeiJing.getDate()){
ECD[eventCalendarFirstDay-j].style.backgroundColor="lightskyblue"
ECD[eventCalendarFirstDay-j].style.fontWeight="bold"
ECD[eventCalendarFirstDay-j].title+="\n今天"
}
ECD[eventCalendarFirstDay-j].style.color="#999"
ECD[eventCalendarFirstDay-j].innerHTML=i
}
for(i=1;i<=eventCalendarThisMonthMax;i++){
for(j=0;events[j];j++){
if(eventCalendarYear==events[j][1]&&eventCalendarMonth==events[j][2]&&i==events[j][3]){
if(ECD[i+eventCalendarFirstDay-1].style.backgroundColor=="firebrick"||ECD[i+eventCalendarFirstDay-1].style.backgroundColor=="gold"){
ECD[i+eventCalendarFirstDay-1].style.backgroundColor="gold"
}
else{
ECD[i+eventCalendarFirstDay-1].style.backgroundColor="seagreen"
}
ECD[i+eventCalendarFirstDay-1].title+="\n"+weighAnchor(j)+events[j][0]
continue
}
else if(eventCalendarYear==events[j][4]&&eventCalendarMonth==events[j][5]&&i==events[j][6]){
if(ECD[i+eventCalendarFirstDay-1].style.backgroundColor=="seagreen"||ECD[i+eventCalendarFirstDay-1].style.backgroundColor=="gold"){
ECD[i+eventCalendarFirstDay-1].style.backgroundColor="gold"
}
else{
ECD[i+eventCalendarFirstDay-1].style.backgroundColor="firebrick"
}
ECD[i+eventCalendarFirstDay-1].title+="\n结束 "+events[j][0]
continue
}
}
if(eventCalendarYear==eventCalendarTodayInBeiJing.getFullYear()&&eventCalendarMonth==eventCalendarTodayInBeiJing.getMonth()+1&&i==eventCalendarTodayInBeiJing.getDate()){
ECD[i+eventCalendarFirstDay-1].style.backgroundColor="royalblue"
ECD[i+eventCalendarFirstDay-1].style.color="white"
ECD[i+eventCalendarFirstDay-1].style.fontWeight="bold"
ECD[i+eventCalendarFirstDay-1].title+="\n今天"
}
ECD[i+eventCalendarFirstDay-1].innerHTML=i
}
eventCalendarYearCell.innerHTML=eventCalendarYear
eventCalendarMonthCell.innerHTML=eventCalendarMonth
}
function eventCalendarMonthMax(Month,Year){
if(Month==2){
if(Year%4==0&&Year%100!=0||Year%400==0){
return 29
}
else return 28
}
else if(Month==4||Month==6||Month==9||Month==11){
return 30
}
else return 31
}
function eventCalendarNextYearOverflow(){
if(eventCalendarMonth==12){
return eventCalendarYear+1
}
else return eventCalendarYear
}
function eventCalendarLastYearInsufficient(){
if(eventCalendarMonth==1){
return eventCalendarYear-1
}
else return eventCalendarYear
}
function eventCalendarNextMonthOverflow(){
if(eventCalendarMonth==12){
return 1
}
else return eventCalendarMonth+1
}
function eventCalendarLastMonthInsufficient(){
if(eventCalendarMonth==1){
return 12
}
else return eventCalendarMonth-1
}
function weighAnchor(origin){
if(origin==0){
return "出发!"
}
else if(origin==41){
return "再诞!"
}
else{
return "开始 "
}
}
<div style="display:none;">
</div><div class="resourceLoader"
style="display:none"
data-is-module="false"
data-mime=""
>MediaWiki:{{{1}}}</div>
<div class="resourceLoader"
style="display:none"
data-is-module="false"
data-mime=""
></div>