html日历页面节假日_js+html制作简单日历的方法

这篇教程展示了如何用JavaScript和HTML创建一个简单的日历,并标记节假日。通过示例代码,详细解释了如何获取当前月份的日期、判断是否为闰年、设置日期颜色等步骤,帮助初学者理解日历的实现过程。
摘要由CSDN通过智能技术生成

这篇文章主要为大家详细介绍了js html制作简单日历的方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

新手一枚,不会写什么高大上的博文,一些平时做的小练习,献丑

e61ce1e512da68474332e3784d68352a.png

代码:

无标题文档

* {margin: 0;padding: 0}

#calendar {width: 210px;margin: 100px auto;overflow: hidden;border: 1px solid #000;padding: 20px;position: relative}

#calendar h4 {text-align: center;margin-bottom: 10px}

#calendar .a1 {position: absolute;top: 20px;left: 20px;}

#calendar .a2 {position: absolute;top: 20px;right: 20px;}

#calendar .week {height: 30px;line-height: 20px;border-bottom: 1px solid #000;margin-bottom: 10px}

#calendar .week li {float: left;width: 30px;height: 30px;text-align: center;list-style: none;}

#calendar .dateList {overflow: hidden;clear: both}

#calendar .dateList li {float: left;width: 30px;height: 30px;text-align: center;line-height: 30px;list-style: none;}

#calendar .dateList .ccc {color: #ccc;}

#calendar .dateList .red {background: #F90;color: #fff;}

#calendar .dateList .sun {color: #f00;}

$(function() {

//必要的数据

//今天的年 月 日 ;本月的总天数;本月第一天是周几???

var iNow=0;

function run(n) {

var oDate = new Date(); //定义时间

oDate.setMonth(oDate.getMonth()+n);//设置月份

var year = oDate.getFullYear(); //年

var month = oDate.getMonth(); //月

var today = oDate.getDate(); //日

//计算本月有多少天

var allDay = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31][month];

//判断闰年

if(month == 1) {

if(year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {

allDay = 29;

}

}

//判断本月第一天是星期几

oDate.setDate(1); //时间调整到本月第一天

var week = oDate.getDay(); //读取本月第一天是星期几

//console.log(week);

$(".dateList").empty();//每次清空

//插入空白

for(var i = 0; i < week; i++) {

$(".dateList").append("

");

}

//日期插入到dateList

for(var i = 1; i <= allDay; i++) {

$(".dateList").append("

" + i + "")

}

//标记颜色=====================

$(".dateList li").each(function(i, elm){

//console.log(index,elm);

var val = $(this).text();

//console.log(val);

if (n==0) {

if(val

$(this).addClass('ccc')

}else if(val==today){

$(this).addClass('red')

}else if(i%7==0 || i%7==6 ){

$(this).addClass('sun')

}

}else if(n<0){

$(this).addClass('ccc')

}else if(i%7==0 || i%7==6 ){

$(this).addClass('sun')

}

});

//定义标题日期

$("#calendar h4").text(year + "年" + (month + 1) + "月");

};

run(0);

$(".a1").click(function(){

iNow--;

run(iNow);

});

$(".a2").click(function(){

iNow++;

run(iNow);

})

});

2013年10月

上月

下月

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值