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

DatePicker组件开发

老师的日历日期弄错了 2016年12月的1号是星期四,不是星期三
以为有什么惊喜,这逻辑写的,整那么复杂哈,把人往沟里带吧。 我写的能比他少一半代码,还不饶。
老师是我的

最赞回答 / 慕盖茨1271144
<...图片...>在7:06代码里改成return了
获取本月最后一天,醍醐灌顶
这个程序写上注释会方便理解和记忆,不然变量名很容易弄混
这个程序写上注释会方便理解和记忆
注释:如果您使用 thead、tfoot 以及 tbody 元素,您就必须使用全部的元素。它们的出现次序是:thead、tfoot、tbody,这样浏览器就可以在收到所有数据前呈现页脚了。您必须在 table 元素内部使用这些标签。

还是不要用 thead 和 tbody 了吧
th 可以用
关于切换月份出现问题的解决方案:
将data.js开头的 if(!year || !month){ ... } 换成 if(!year &amp;&amp; !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(&#039;div&#039;);
wrapper.className=&#039;datepicker-wrapper&#039;;
document.body.appendChild(wrapper);
}
要点1:
上一月出错的朋友 ,把||改为&amp;&amp;

if(!year&amp;&amp;!month){
var date=new Date();
var year=date.getFullYear()//当前是哪年
var month=date.getMonth()+1//当前是哪个月(返回的数据比真实的小于1所以加1,月份是从0-11)
}
课程须知
需要有HTML/CSS/JavaScript基础
老师告诉你能学到什么?
1、使用HTML和CSS编写组件的静态UI 2、使用原生javascript完成日历数据的获取 3、使用原生javascript实现静态UI和动态数据的结合,完成日历数据的渲染 4、事件绑定处理 5、前端组件的基本构成和编写模式

微信扫码,参与3人拼团

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

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消