-
本节课的出发点: 左右按钮切换时,进入上一月,或者下一月。 初始化的时候,给按钮绑定事件。但这种情况,是在组件初始化的时候才有效,事件只绑定了一次;但页面渲染之后,内容里是根据按钮再重新渲染的,我们的按钮也是感觉HTML字符串再重新渲染的,因此就会有按钮不断的销毁与重建。查看全部
-
日期组件的绝对定位: 目标是希望它出现在输入框的下方,所以就要先找到输入框目前在页面的哪个位置呢: var left = $input.offsetLeft; var top = $input.offsetTop; var height = $input.offsetHeight; $wrapper.style.top = top + height + 9 +'px'; $wrapper.style.left = left + 'px';查看全部
-
元素的显示与隐藏: 方式很多样;最通用是通过class来控制,默认是隐藏,除非多了一个 block 的样式,后者覆盖前者,wrapper就才显示出来。 .classList.remove 与 .classList.add 的 使用。 isOpen 布尔值 来记录当前是关闭状态还是展开状态。查看全部
-
优化着手点有两方面: 1.当用户点击输入框的时候,日期组件才可以显示,不能一打开页面,它就在,太不友好了; 2.目前的日期组件的主题结构 wrapper header body是占据文档流的,如果页面里还有其他的内容,会因日期的出行,下移的,因此将其样式改为绝对定位。查看全部
-
(function(){ window.datepicker = { getMonth: function (year,month){ var today = new Date(); if(!year||!month){ year=today.getFullYear(); month=today.getMonth()+1 } var firstDay = new Date(year,month-1,1);//这个月的一天 var firstDayWeek = firstDay.getDay();//第一天是星期几 var day=today.getDate();//当前是几号 var numOfDays=new Date(year,month,0).getDate();//这个月的天数 var dayList=[];//这个月所有的日子 for(var i=1;i<=numOfDays;i++){ dayList.push(i); } return { firstDay:firstDay, firstDayWeek:firstDayWeek, year:year, month:month, day:day, numOfDays:numOfDays, dayList:dayList }; } }; })();查看全部
-
组件开发流程查看全部
-
真的很不错呢查看全部
-
data-*是一个比较新的API,老的浏览器不能使用。*是要替换成自己命名的字符。 为一个标签添加一个此属性后,js取值的时候是:target.dataset.d; target:添加此属性的标签对象 dataset:固定写法 d:添加的属性名的后半部分,即data-*中“-”后自己命名的字符。查看全部
-
日期对象查看全部
-
每个月最后一天不确定查看全部
-
getDay()获取当前日期是周几查看全部
-
日期对象查看全部
-
日期对象查看全部
-
在main.js中的第83行,if语句使用break会报错,显示为不合法使用break,是怎么回事查看全部
-
月份天查看全部
举报
0/150
提交
取消