在网上看了几篇关于生成日历的js 教程于是自己也整理了一个想法思路 大家有什么建议欢迎提出
首先这个项目里面本人认为的几个难点:
1、如何定义每一个月的第一天位置
每个月的第一天都不是固定的星期几,所以第一天的输出需要动动脑筋把它放到对应的星期里面
2、每个月的最后一天有时候因为行数不够输出不了怎么办?
下面会有答案 ^_^
思路:
1、定义好每一个月份的日期天数
2、获取当前的系统日期初始化数据
3、输出日历
2.1、先获取当前月的第一天是星期几(这一点与日历的排版至关重要!)
2.2、获取当前月的天数
2.3、获取当前月有多少个星期(即要输出多少行 行数这里我会预留多一行)
2.4、获取当前年份和月份 用作显示
下面便是完整的代码:
js 日历 *{ border: 0; padding: 0; margin: 0; font-family: "微软雅黑"; } a{ text-decoration: none; color: #000; } li{ list-style-type: none; } .calendar_wrap{ width: 350px; margin: 0 auto; padding: 0; border: 1px solid #000; } .calendar_list{ width: 100%; margin-top: 10px; } .calendar_list tr{ width: 100%; } .calendar_list tr td{ text-align: center; height: 45px; } .control_bar{ word-spacing: -6px; } .control_bar span,.control_bar b{ display: inline-block; text-align: center; word-spacing: 0px; } .left-bt,.right-bt{ width: 50px; } #reduce_bt,#add_bt{ width: 50%; height: 25px; border-radius: 50%; } #reduce_bt:focus{ outline: none; } #add_bt:focus{ outline: none; } #current_date{ width: 250px; } #resetBt{ display: block; text-align: center; color: #fff; cursor: pointer; width: 120px; line-height: 40px; background-color: #FF7F27; margin: 0 auto; } #date_list tr td:hover{ background-color: #ccc; cursor: default; } 2017-02 回到现在日期
日 一 二 三 四 五 六
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持考高分网!



