FlexoCalendar周日历出错的解决方法
生活随笔
收集整理的這篇文章主要介紹了
FlexoCalendar周日历出错的解决方法
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
大部分日歷控件都是日視圖,月視圖和年視圖。由于項目需要周視圖,找到了一位大神寫的插件FlexoCalendar,提供了周視圖。用得還挺順手,最后才發(fā)現(xiàn)每年12月份會出錯。如下圖:
上圖是默認(rèn)的(不是用戶選擇)情況,2017-12-25,2017-12-31正常。
上圖是用戶選擇第二周之后出現(xiàn)了錯誤,應(yīng)該是2017-12-10變成了2018-12-10.
接著我又看了2018年12月,依然出現(xiàn)錯誤。很明顯是寫這個日歷控件的大神把年份多加了一年,我們來看看這段代碼在哪里,在FlexoCalendar.js文件我們可以看到:
endYear = startMonth == 12 ? startYear + 1 : startYear ; 原來是當(dāng)12月份時,大神把每一個周的endYear都加了1,明顯不對,那我們稍微修改一下: endYear = startMonth == 12 ? startYear : startYear ; 這樣貌似對了,但是我們要想象一下大神為什么會有個加一呢,哦,應(yīng)該是當(dāng)?shù)谖逯苤腥绻霈F(xiàn)了下一年的日期就要加一,如下圖(2016年12月):
很明顯第五周中如果出現(xiàn)了下一年的日期,這樣也會出錯,那怎么改才會完全正確呢,那就是下面的代碼了:
endYear = startMonth == 12 && parseInt(endDay)<7? startYear +1 : startYear ;把原來的一行代碼換成上面我提供的,就沒問題了,如下:
因時間倉促,資質(zhì)有限,文中表述僅代表個人觀點,如果有更好的想法,歡迎分享。
總結(jié)
以上是生活随笔為你收集整理的FlexoCalendar周日历出错的解决方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 移动端点击(click)事件延迟问题的产
- 下一篇: ueditor百度编辑器常见报错的解决方