可自定义 jQuery时间选择器插件 时间选择器

  • 源码大小:271.64KB
  • 所需积分:1积分
  • 源码编号:19JP-3376
  • 浏览次数:513次
  • 最后更新:2023年06月06日
  • 所属栏目:时间和时钟
本站默认解压密码:19jp.com 或 19jp_com

简介

timepicker是一个轻量级(约2.5kb缩小和gzip)的jQuery插件,灵感来自谷歌日历,它为您的项目添加了高度可定制的时间选择器。

特征:

  • 高度可定制,满足您的特殊要求
  • 支持鼠标滚轮
  • 支持键盘导航
  • 重量轻,易于使用

参见:

  • jQuery日期和时间选择器插件-简单日期时间选择器
  • 简单日期选择器小部件的jQuery插件-简单日期选择器
  • jQuery Mobile的Android风格日期选择器-Mobi Pick
  • jQuery的可定制和轻量级日期选择器插件-glDatePicker
  • Twitter引导程序的Cool Time Picker
  • 用于引导的简单日期选择器
  • Twitter引导程序的日期范围选取器
  • 轻量级jQuery日期输入选择器-picadate

基本用法:

1.包括jQuery库和timepicker.js

<script type="text/javascript" src="jquery.min.js"></script>
<script type="text/javascript" src="jquery.timepicker.js"></script>

2.输入时间选择器CSS来设置时间选择器的样式。

<link rel="stylesheet" href="jquery.timepicker.css" />

3.为时间选择器创建一个普通文本字段。

<input id="basicExample" type="text" class="time" />

4.在文本字段上调用插件并完成。

$(function() {
  $('#basicExample').timepicker({
    // options here
  });
});

5.所有默认自定义选项。

  • show2400:错误:使用24小时时间格式时,将24:00显示为一个选项。
  • className:空:应用于包含时间选择器下拉列表的HTML元素的类名
  • 最短时间:凌晨12:00:应首先出现在下拉列表中的时间。
  • 最大时间::应该在下拉列表中最后显示的时间。可用于限制时间选项的范围。默认值:minTime后24小时
  • 显示持续时间:false:显示下拉列表中每个项目的相对时间。必须设置minTime或durationTime
  • 持续时间::showDuration计算相对时间所依据的时间。默认值:minTime
  • 步骤:30:下拉列表中每个项目之间的时间量,以分钟为单位。
  • 时间格式:'g:ia':应如何在列表和输入元素中显示时间。使用PHP的date()格式语法
  • 滚动默认值:null:如果未选择时间值,则设置下拉滚动位置以显示所提供的时间。
  • 方向:“ltr”,:ltr或rtl。
  • selectOnBlur:错误:当时间选择器失去焦点时,用当前突出显示的时间值更新输入
  • 附加到:覆盖附加下拉列表的位置。将字符串用作选择器,将函数作为参数传递给单击的输入元素,或者将jquery对象直接用作默认值:“body”
  • disableTouchKeyboard:真,:禁用触摸设备的屏幕键盘
  • forceRoundTime: false:?一旦失去焦点,就强制更新步骤时间设置。默认值:false
  • listWidth:空:设置为1以匹配输入宽度,设置为2以使输入宽度加倍,设置为.5以将输入宽度减半,等等
  • disableTimeRanges: [],:禁用某些时间范围的选择。输入是一组时间对,如“[[凌晨3:00”、“凌晨4:30”]、[下午5:00”、“晚上8:00”]]默认值:[]
  • closeOnWindowScroll: false,:滚动窗口时关闭时间选择器。(复制<select>行为。)默认值:false
  • typeahead突出显示:true,:在表单输入中键入值时,高亮显示最近的对应时间选项。默认值:true
  • noneOption: false:将“无”选项添加到时间选择器下拉列表的顶部默认值:false
  • showOn:真:当输入触发特定事件时,显示时间选择器下拉列表。设置为false可禁用自动显示
  • disableTextInput: false:禁用在时间选择器输入框中键入;强制用户从列表中进行选择。
  • lang:{am:‘am’,pm:‘pm’,am:‘am’,pm:‘pm’,小数点:‘.’,mins:‘mins’,hr:‘hr’,hrs:‘hrs’}:时间选择器中使用的语言常量。可以通过传递具有以下一个或多个属性的对象来覆盖默认值:decimal、mins、hr、hrs。
  • roundingFunction:舍入到最近的步长:用于计算四舍五入时间的函数。函数将接收以秒为单位的时间和作为参数的设置对象。函数应处理一个空值数秒。
  • stopScrollPropagation: false:在选取器的边缘滚动时,会阻止父容器()滚动。
  • 使用选择:false:将输入转换为HTML SELECT控件。这非常适合小屏幕设备,或者如果您想防止用户输入任意值。此选项与以下选项不兼容:appendTo、closeOnWindowScroll、disableTouchKeyboard、forceRoundTime、scrollDefault、selectOnBlur、typeAheadHighlight。

6.公开方法。

// Get the time as an integer, expressed as seconds from 12am.
$('#getTimeExample').timepicker('getSecondsFromMidnight');

// Get the time using a Javascript Date object, relative to a Date object (default: today's date).
$('#getTimeExample').timepicker('getTime');
$('#getTimeExample').timepicker('getTime', new Date());

// Close the timepicker dropdown.
$('#hideExample').timepicker('hide');

// Change the settings of an existing timepicker. 
// Calling option on a visible timepicker will cause the picker to be hidden.
$('#optionExample').timepicker({ 'timeFormat': 'g:ia' });

// Unbind an existing timepicker element.
$('#removeExample').timepicker('remove');

// Set the time using a Javascript Date object.
$('#setTimeExample').timepicker('setTime', new Date());

// Display the timepicker dropdown.
$('#showExample').timepicker('show');

更新日志:

v1.14.0 (2022-09-26)

  • 删除已中断7年的showOnFocus设置

v1.13.19 (2022-09-26)

  • 在不使用delimeter的情况下,预测性更强
  • 修正了如果时间范围在minTime之前,disableTimeRanges不工作的问题

2021-04-22

  • JS已更新

2021-04-22

  • JS已更新

2021-04-12

  • 舍入问题已解决

第1.13.18节(2021-02-08)

  • 任何需要时间值的东西的标准化输入

v1.13.16 (2021-02-07)

  • 将焦点更改恢复为本机JS。
  • 修复了IE 11问题。

v1.13.15 (2020-09-24)

  • 删除了伪造的console.log
  • 已选择移动(_S)

v1.13.14 (2020-08-04)

  • 修复“00”未解析为12AM的问题

v1.13.13 (2020-08-03)

  • 修复触摸事件时下拉菜单关闭错误

v1.13.12 (2020-08-03)

  • 删除console.log,版本提升

v1.13.11 (2020-05-14)

  • 修复文件列表中缺少缩小的CSS

v1.13.10 (2020-05-14)

  • 修复将时间int传递给setTime时的错误

v1.13.9 (2020-05-09)

  • 修复导致错误的未定义道具

v1.13.8 (2020-05-08)

  • 转换桩至ES5

v1.13.7 (2020-05-07)

  • 修复向后不兼容的包结构

v1.13.5 (2020-05-03)

  • 修复中断时间解析正则表达式

v1.13.4 (2020-04-06)

  • 修复中断时间解析正则表达式

v1.13.3 (2020-03-23)

  • 从正则表达式中删除不受支持的unicode标志

v1.13.2 (2020-03-08)

  • 修复初始化时触发的HTML5表单所需字段验证

v1.13.1 (2020-03-01)

  • 修复初始化时触发的HTML5表单所需字段验证

v1.13.0 (2019-12-30)

  • 已更新

v1.12.0 (2019-11-24)

  • 添加列表宽度选项

v1.11.15 (2019-05-12)

  • 已更新到最新版本

v1.11.14 (2018-06-03)

  • Select元素用于选择继承输入名称

v1.11.13 (2017-11-20)

  • Fix none未定义选项

v1.11.12 (2017-09-25)

  • 修复为setTime错误抛出的selectTime
  • 使用useSelect修复损坏的setTime

v1.11.11 (2017-05-15)

  • 修复在setTime上错误触发的changeTime事件

v1.11.10 (2017-02-20)

  • 将默认设置重新设置为不阻止插件重命名

v1.11.9(2016年12月13日)

  • 期权方法的改进

v1.11.7(2016年11月25日)

  • 修复00:00未在下拉列表中突出显示的问题

v1.11.7(2016年11月14日)

  • 修复带有minTime故障的forceRoundTime

v1.11.6(2016年10月26日)

  • 数据属性覆盖初始化选项

v1.11.5(2016年9月19日)

  • 修复初始化时的changeTime触发

v1.11.4 (2016-09-08)

  • 修复损坏的范围界限检查

v1.11.3 (2016-09-05)

  • 使用列表打开触发器返回_timeFormat()

v1.11.2(2016年8月17日)

  • 使现代化

v1.11.1 (2016-05-03)

  • 修复移动Chrome错误

v1.10.1 (2016-05-03)

  • 添加isVisible方法

v1.9.0(2016年4月18日)

  • 新的基准日期逻辑

v1.8.11(2016年3月27日)

  • 固定none中的整数选项值解释为时间

v1.8.10 (2016-02-05)

  • 修复$('#input').timepicker('option','minTime')
  • 修复禁用TextInput时断开的选项卡:true

v1.8.9(2016年1月10日)

  • 修复每个缺少的var

v1.8.8(2015年11月29日)

  • 将上午/下午课程添加到下拉项

v1.8.7(2015年11月17日)

  • 修复溢出时间解析

v1.8.6(2015年11月10日)

  • disableTextInput使用keydown

v1.8.5 (2015-11-03)

  • JS更新。

v1.8.4 (2015-11-02)

  • 修复show2400选项

v1.8.3(2015年10月24日)

  • 修复损坏的滚动当初始值无效时的默认值

v1.8.2 (2015-09-09)

  • 修正上午/下午24小时时间值不正确的问题

v1.8.1 (2015-06-30)

  • 修复showOn错误

v1.8.0 (2015-06-16)

  • 修复了意外恢复的stopScrollPropagation

v1.7.0(2015年5月27日)

  • disableTextInput的成功返回

v1.6.12 (2015-05-13)

  • 将setTime固定为noneOption

v1.6.11 (2015-04-14)

  • 修复使用字符串进行滚动时的闭包Default

v1.6.10(2015年4月11日)

  • 修复minTime更新时scrollDefault未更改的问题

v1.6.9 (2015-04-10)

  • 修正12:00am值的getTime

v1.6.8 (2015-04-02)

  • getTime为不可分析的时间值返回null

v1.6.7 (2015-03-30)

  • 修复useSelect:true中断的setTime

v1.6.6 (2015-03-29)

  • 使用typeahead修复箭头键突出显示:false

v1.6.5 (2015-03-19)

  • 正确处理.val()更改

v1.6.4 (2015-03-12)

  • 调整窗口大小时隐藏时间选择器

v1.6.0(2015年2月11日)

  • 设置minTime和maxTime会产生1个下拉选项
  • 添加舍入函数选项

v1.5.3 (2015-01-28)

  • 修复Chrome中单击下拉项时的event.target
  • 改进方向设置并添加文档

v1.5.2 (2015-01-22)

  • 添加对为步骤函数指定函数的支持

v1.5.1 (2015-01-12)

  • 修正了_formatValue()中的上午/下午预测

v1.5.0 (2015-01-07)

  • 添加show2400选项以切换显示24:00

2014-10-15

  • 当时间选择器位于输入上方时,添加了位于顶级的ui时间选择器。

v1.4.13 (2014-10-05)

  • 当时间选择器位于输入上方时,添加了位于顶级的ui时间选择器。

v1.4.11 (2014-09-24)

  • 使用useSelect修复了noneOption。

v1.4.10 (2014-09-22)

  • 修复了重复的“selectTime”事件。

v1.4.10 (2014-09-18)

  • 修正了使用useSelect时初始化输入值的问题。

v1.4.9 (2014-09-16)

  • 修复了使用自定义am/pm字符串时的_time2int()正则表达式

v1.4.8 (2014-09-16)

  • 使现代化

v1.4.7 (2014-08-05)

  • 修正了为noneOption传递数组时的错误

v1.4.6 (2014-08-05)

  • 固定转义时间格式

v1.4.5 (2014-08-01)

  • 在_time2int()中强制进行时间字符串分析。

v1.4.4 (2014-07-29)

  • setTime()现在尊重forceRoundTime选项。

v1.4.3 (2014-07-16)

  • 修正了多个时间选择器的修改选项。

v1.4.2 (2014-07-16)

  • 固定的负持续时间显示。

v1.4.0 (2014-07-07)

  • 删除了scrollDefaultNow、scrollDefaultTime;添加的滚动默认值

v1.3.10 (2014-07-04)

  • 添加了“showOnFocus”选项。

v1.3.9 (2014-06-20)

  • 修复了_int2duration()中缺少的参数。
  • 修复了useSelect/remove()错误

v1.3.8 (2014-05-23)

  • 使现代化

v1.3.6 (2014-04-20)

  • 修复了IE中的格式错误。

v1.3.6 (2014-04-14)

  • 修正了单击另一个时间选择器时的格式设置

v1.3.5 (2014-02-25)

  • 扩展的noneOption功能

v1.3.4 (2014-02-24)

  • 版本更新。

v1.3.3 (2014-02-10)

  • 对未初始化的时间选择器的方法调用将不再产生JS错误

v1.3.2 (2014-02-04)

  • noneOption现在将接受一个字符串来自定义“None”选项标签。

v1.3.1 (2014-01-13)

  • 固定方法链接

v1.3.0 (2014-01-13)

  • 添加了noneOption
  • 选择渲染时的初稿

v1.2.17 (2014-01-09)

  • 修复了直接调用show()时的错误。

v1.2.16 (2014-01-06)

  • 增加了对将选项设置为数据属性的支持。

v1.12.14(2013年12月24日)

  • 如果没有选择值,getTime现在正确地返回null

v1.2.14 (2013-12-17)

  • 修复了未设置的24:00值

v1.2.13 (2013-12-12)

  • 修复了showTimepicker事件后的额外焦点传播

v1.2.12 (2013-11-27)

  • 修正了日期不同时不更新的minTime。
  • 修正了设置minTime时有时未高亮显示选定值的问题。

v1.2.11 (2013-11-17)

  • “disableTouchKeyboard”现在默认为false。

v1.2.10 (2013-11-09)

  • 修复了disableTimeRanges重叠的错误。

v1.2.8(2013年10月26日)

  • 修复了同时支持鼠标和触摸事件的浏览器的关闭处理程序

v1.2.7 (2013-09-08)

  • 修复了未触发的事件

v1.2.4 (2013-08-28)

  • 修复了setTime()不更新列表选择器的问题

v1.2.2 (2013-08-16)

  • 修正了用户键入格式完美的时间值时不触发changeTime的问题。

v1.2.1(2013年8月15日)

  • 修复了IE10中不正确的触摸检测

预览截图