摘要:好多時(shí)候在移動(dòng)端需要一個(gè)的日期選擇器,由于在應(yīng)用上有可能應(yīng)用各種框架庫(kù)等所以說一個(gè)無依賴的,這樣易于上層進(jìn)行封裝。主要包含兩種選擇器日期和時(shí)間。
好多時(shí)候在移動(dòng)端需要一個(gè)的日期選擇器,由于在應(yīng)用上有可能應(yīng)用各種框架庫(kù)(Vue.js, React.js, zepto.js等);所以說一個(gè)無依賴的,這樣易于上層進(jìn)行封裝。直接開門見山,先來張動(dòng)圖看看效果:
可以看出整個(gè)風(fēng)格就是 Material Design 風(fēng)格的,主要特點(diǎn)就是:
手勢(shì)操作:左劃右劃切換月份,當(dāng)然動(dòng)畫效果還是要有的。
快速選擇年月:點(diǎn)擊年部分切換到選擇年界面,點(diǎn)擊月日周會(huì)__來回切換__到主日期選擇界面和月份選擇界面(如果在非日期選擇主界面點(diǎn)擊就會(huì)切換到主界面,如果在主界面點(diǎn)擊就切換到快速選擇月份界面);當(dāng)然選擇年一級(jí)選擇月份界面要有順滑的滑動(dòng)效果。
鐘表樣式時(shí)間選擇:直接、簡(jiǎn)單選擇時(shí)間。
安裝使用利用webpack打包,支持UMD,暴露全局DateTimePicker變量,當(dāng)然可以選擇通過npm安裝:npm i date-time-picker即可。主要包含兩種選擇器:日期和時(shí)間。
日期選擇器 DatePickerbtn.onclick = function () { var datePicker = new DateTimePicker.Date(options, config) datePicker.on("selected", function (formatDate, now) { // formatData = 2016-10-19 // now = Date實(shí)例 -> Wed Oct 19 2016 20:28:12 GMT+0800 (CST) }) }時(shí)間選擇器 TimePicker
btn.onclick = function () { var timePicker = new DateTimePicker.Time(options, config) timePicker.on("selected", function (formatTime, now) { // formatTime = 18:30 // now = Date實(shí)例 -> Wed Oct 19 2016 18:30:13 GMT+0800 (CST) }) }API以及事件
API:
picker.show() picker.hide() picker.destroy()
事件:
picker // 點(diǎn)擊確定 .on("selected", function (formatValue, now) { console.log(formatValue, now) }) // 點(diǎn)擊取消,同時(shí)會(huì)觸發(fā) `destroy` 事件 .on("canceled", function () { console.log("canceled") }) // 銷毀 .on("destroy", function () { console.log("destroy") })options 和 config
從上邊可以看到在實(shí)例化Picker的時(shí)候有兩個(gè)參數(shù)可選:options和config。
同樣區(qū)分下DatePicker和TimePicker。
DatePicker Options{ lang: "EN", // 語言,默認(rèn) "EN" ,默認(rèn) "EN", "zh-CN" 可選 format: "yyyy-MM-dd", // 格式, "yyyy-MM-dd" default: "2016-10-19", // 默認(rèn)值 `new Date()`。 如果`default`有值且是字符串的話就會(huì)根據(jù)`format`參數(shù)來將其轉(zhuǎn)化為一個(gè)`Date`實(shí)例。當(dāng)然可以選擇傳入一個(gè)日期實(shí)例。 }TimePicker Options
{ lang: "EN", // 語言,默認(rèn) "EN" ,默認(rèn) "EN", "zh-CN" 可選 format: "HH:mm", // 格式, "HH:mm" default: "12:27", // 默認(rèn)值 `new Date()`。 如果`default`有值且是字符串的話就會(huì)根據(jù)`format`參數(shù)來將其轉(zhuǎn)化為一個(gè)`Date`實(shí)例。同樣可以選擇傳入一個(gè)日期實(shí)例。 minuteStep: 5 // 分鐘精度,默認(rèn)值 5。 }Config
默認(rèn)中文(zh-CN)配置:
{ day: ["周日", "周一", "周二", "周三", "周四", "周五", "周六"], shortDay: ["日", "一", "二", "三", "四", "五", "六"], MDW: "M月d日D", // 主面板標(biāo)題部分 月日星期 YM: "yyyy年M月", // 日期部分標(biāo)題顯示 OK: "確定", // 確定按鈕 CANCEL: "取消" // 取消按鈕 }
默認(rèn)英語配置(EN):
{ day: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"], shortDay: ["S", "M", "T", "W", "T", "F", "S"], MDW: "D, MM-d", YM: "yyyy-M", OK: "OK", CANCEL: "CANCEL" }在線查看
如果你是用手機(jī)訪問請(qǐng)直接點(diǎn)擊 http://demo.aijc.net/js/date-time-picker/dist/example.html;或者手機(jī)掃描二維碼即可查看:
項(xiàng)目地址:https://github.com/dolymood/date-time-picker
歡迎拍磚,試用。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/91067.html
摘要:簡(jiǎn)潔直觀強(qiáng)悍的前端開發(fā)框架,讓開發(fā)更迅速簡(jiǎn)單。是一套基于的前端框架。首個(gè)版本發(fā)布于年金秋,她區(qū)別于那些基于底層的框架,卻并非逆道而行,而是信奉返璞歸真之道。 2017-1209 ZanUI (Vue) 2017-1218 Onsen UI(Vue, React, Angular) 2017-1215 增加 Vuetify, Weex UI, Semantic UI React,ele...
摘要:簡(jiǎn)潔直觀強(qiáng)悍的前端開發(fā)框架,讓開發(fā)更迅速簡(jiǎn)單。是一套基于的前端框架。首個(gè)版本發(fā)布于年金秋,她區(qū)別于那些基于底層的框架,卻并非逆道而行,而是信奉返璞歸真之道。 2017-1209 ZanUI (Vue) 2017-1218 Onsen UI(Vue, React, Angular) 2017-1215 增加 Vuetify, Weex UI, Semantic UI React,ele...
摘要:一個(gè)專注于瀏覽器端和兼容的包管理器。一個(gè)整合和的最佳思想,使開發(fā)者能快速方便地組織和編寫前端代碼的下一代包管理器。完全插件化的工具,能在中識(shí)別和記錄模式。健壯的優(yōu)雅且功能豐富的模板引擎。完整的經(jīng)過充分測(cè)試和記錄數(shù)據(jù)結(jié)構(gòu)的庫(kù)。 【導(dǎo)讀】:GitHub 上有一個(gè) Awesome – XXX 系列的資源整理。awesome-javascript 是 sorrycc 發(fā)起維護(hù)的 JS 資源列表...
閱讀 3107·2021-10-13 09:40
閱讀 3962·2021-09-22 15:51
閱讀 1507·2021-09-22 15:48
閱讀 1076·2021-09-06 15:00
閱讀 1801·2019-08-30 15:43
閱讀 2370·2019-08-29 18:35
閱讀 1683·2019-08-29 16:18
閱讀 3625·2019-08-29 12:49