写日历的一些总结(二)
點擊切換前一天的日期 ?只能切換到當前月份的前三個月 ?例如(今天是2017年3月24日,點擊左邊按鈕只能切換到2016年12月1日左按鈕不能再點擊,點擊右邊按鈕只能切換到當前日期的前一天右按鈕不能再點擊)具體js代碼如下:
? var today = new Date(); ?獲取當前日期
? var year = today.getFullYear(); ?
? var month = today.getMonth()+1;
? var day = today.getDate();
? var m = month; ? ? ?
?var y =year; ? ? ?
?var d =day; ? ? ?
?var arrmonth = new Array([0],[31],[28],[31], [30], [31], [30], [31], [31], [30],[31], [30], [31]); ? ? ?
?if (year % 4 == 0 && year % 100 != 0) { ? ? ? ? ? ?arrmonth[2] = 29; ? ? ? ?} ? ? ? ?
var value = year+"."+month+"."+day; ? ? ? ?
$('.time-num').html(value); ? ? ?
?// ?獲取前三個月的日期 ? ? ? ?
var beforeThreeMonth; ? ? ? ?
function getThreeMonth(m){ ? ? ? ? ? ?
switch(m) ? ? ? ? ? ?
{ ? ? ? ? ? ? ?
case 1: ? ? ? ? ? ? ?
case 2: ? ? ? ? ? ? ?
case 3: ? ? ? ? ? ? ? ? ?
beforeThreeMonth = m+10; ? ? ? ? ? ? ? ? ?
if(beforeThreeMonth==13){ ? ? ? ? ? ? ? ? ? ? ?
beforeThreeMonth=1; ? ? ? ? ? ? ? ? ?
} ? ? ? ? ? ? ? ? ?
break; ? ? ? ? ? ?
default: ? ? ? ? ? ? ? ? ?
beforeThreeMonth = m-2; ? ? ? ? ? ? ? ? ?
break; ? ? ? ? ? ?
} ? ? ? ? ? ?
return beforeThreeMonth; ? ? ? ?
} ? ? ?
?// 點擊左邊按鈕時進行日期判斷 ? ? ?
?function datel(){ ? ? ? ? ? ?
if(day-1==0){
? ? ? ? ? ? ? ? ? ?// 判斷月份是否為一月 ? ? ? ? ? ? ? ?
if(month-1==0){ ? ? ? ? ? ? ? ? ?
?year -= 1; ? ? ? ? ? ? ? ? ?
?month = 12; ? ? ? ? ? ? ? ?
}else{
?month -=1; ? ? ? ? ? ? ? ?
} ? ? ? ? ? ? ? ?
day = arrmonth[month]; ? ? ? ? ? ?
}else{
? ? ? ? ? ? ? ? ? ?day=day-1; ? ? ? ? ? ?
} ? ? ? ? ? ?
value = year+"."+month+"."+day; ? ? ? ? ? ?
$('.time-num').html(value);
? ? ? ?} ? ? ?
?// 點擊右邊按鈕時進行日期判斷 ? ? ? ?
function dater(){
if(day+1>arrmonth[month]){ ? ? ? ? ? ? ? ?
if(month+1==13){ ? ? ? ? ? ? ? ? ? ?
year=year+1; ? ? ? ? ? ? ? ? ? ?
month=1; ? ? ? ? ? ? ? ?
}else{ ? ? ? ? ? ? ? ? ? ?
month=month+1; ? ? ? ? ? ? ?
?} ? ? ? ? ? ? ? ?
day = 1; ? ? ? ? ?
}else{ ? ? ? ? ? ? ? ?
day=day+1; ? ? ? ? ? ?
} ? ? ? ? ? ?
value = year+"."+month+"."+day; ? ? ? ? ?
?$('.time-num').html(value); ? ? ?
?} ? ? ? ?
// 點擊事件 ? ? ? ? ? ?
$('.time-cont .left').on('click',function(){ ? ? ? ? ? ? ?
?getThreeMonth(m); ? ? ? ? ? ? ? ?
if(month == beforeThreeMonth&&day==1){ ? ? ? ? ? ? ? ? ?
return false; ? ? ? ? ? ? ? ?
}else{ ? ? ? ? ? ? ? ? ? ?
datel(); ? ? ? ? ? ? ?
?} ? ? ? ? ? ?
}) ? ? ? ? ?
?$('.time-cont .right').on('click',function(mon){ ? ? ? ? ? ? ?
?var mon = m; ? ? ? ? ? ? ? ?
if(month==mon&&d==day){ ? ? ? ? ? ? ? ? ? ?
return false; ? ? ? ? ? ? ? ?
}else{ ? ? ? ? ? ? ? ? ?
?dater(); ? ? ? ? ? ? ? ?
} ? ? ? ? ? ?
}) ? ?
}
轉載于:https://www.cnblogs.com/sunnychen/p/6612860.html
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的写日历的一些总结(二)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: jquery ajaxSubmit
- 下一篇: CodeForces-734E Anto