为了账号安全,请及时绑定邮箱和手机立即绑定

DatePicker组件开发

老师是我的
获取本月最后一天,醍醐灌顶
这个程序写上注释会方便理解和记忆,不然变量名很容易弄混
这个程序写上注释会方便理解和记忆
注释:如果您使用 thead、tfoot 以及 tbody 元素,您就必须使用全部的元素。它们的出现次序是:thead、tfoot、tbody,这样浏览器就可以在收到所有数据前呈现页脚了。您必须在 table 元素内部使用这些标签。

还是不要用 thead 和 tbody 了吧
th 可以用
关于切换月份出现问题的解决方案:
将data.js开头的 if(!year || !month){ ... } 换成 if(!year && !month){ ... } 即可。

注意点:正常的 月份(getMonth()) 返回值在 0~11。
但实际上通过:
new Date(2018, 12); 可以得到:2019年1月
new Date(2018, -1); 可以得到:2017年12月
所以不担心月份只会在今年切换的问题
year和month的值最开始是从哪里传过来的
这逻辑,什么玩意
一个不太重要的事情
从公元前46年,到16世纪,一共累计多出了10天。为此,当时的教皇格列高利十三世,将1582年10月5日人为规定为10月15日。
特殊处理该月天数
每月月历只显示本月日期可以省一堆事情 。。。
星期排序就从星期日开始。。。

非要显示前后两月日期,可以判断上月或下月的月份, 4 6 9 11小月 ,2月28(或29) 其余大月 ,不要去弄绕来绕去的本月第0天是上月最后一天 ,下月第一天是本月最后一天 , 从上月天数中取最后n个(本月一日前面的空格子数)日期放到前面格子就好(下月日期同理)
要点2: 老师中间视频有跳动的地方:


if(!wrapper){
wrapper=document.createElement('div');
wrapper.className='datepicker-wrapper';
document.body.appendChild(wrapper);
}
要点1:
上一月出错的朋友 ,把||改为&&

if(!year&&!month){
var date=new Date();
var year=date.getFullYear()//当前是哪年
var month=date.getMonth()+1//当前是哪个月(返回的数据比真实的小于1所以加1,月份是从0-11)
}
不错哦<img src="https://img1.sycdn.imooc.com//59c87e68000132c509420960-80-80.jpg"/>
房子是我的
给个源码让人参考一下,实在是太吃力了
课程须知
需要有HTML/CSS/JavaScript基础
老师告诉你能学到什么?
1、使用HTML和CSS编写组件的静态UI 2、使用原生javascript完成日历数据的获取 3、使用原生javascript实现静态UI和动态数据的结合,完成日历数据的渲染 4、事件绑定处理 5、前端组件的基本构成和编写模式

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消