- Notifications
You must be signed in to change notification settings - Fork0
Firefox-like time entry plugin for jQuery
License
RocketMan/jquery-fxtime
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
jquery-fxtime is a plugin for jQuery that provides a Firefox-like timeentry element.
Features:
- 12- or 24-hour clock based on the browser's locale
- input keys restricted to legal values
- first empty segment focused on entry
- focus automatically advances to next segment
- may optionally include seconds
- can apply validation (required, minimum, maximum)
Try a simple example here:
https://jsfiddle.net/zookeeper/rv9bafkg/
- Include the
jquery-fxtime.js
script in your webpage. Inaddition, include jQuery, if it has not already been included. Forexample,
<!-- include jQuery, if your webpage has not already included it --><scriptsrc="https://ajax.googleapis.com/ajax/libs/jquery/3.6.4/jquery.min.js"></script><!-- include the minified jquery-fxtime.js --><scriptsrc="https://cdn.jsdelivr.net/gh/RocketMan/jquery-fxtime/dist/jquery-fxtime.min.js"></script>
- On page load in your webpage, invoke $.fn.fxtime on the desiredHTML INPUT elements. For example, to install fxtime on all INPUTelements with class 'time':
$().ready(function(){$("input.time").fxtime();});
fxtime uses a 12- or 24-hour format depending on the browser's locale.By default, only hours and minutes are displayed.
The following optional attributes are recognized on the INPUT element:
step='integer'
to display seconds, specify a value less than 60 (e.g., step='1')min='hh:mm[:ss]'
minimum time value (in 24-hour format)max='hh:mm[:ss]'
maximum time value (in 24-hour format)required
If 'min' and/or 'max' are specified, validation will be performedagainst the time value, and the pseudo-classes:valid
and:invalid
will be set on the element as appropriate.
If 'required' is specified,:valid
will be set if and only if a validtime value has been entered.
The following methods are available:
$(selector).fxtime('val')
- get 24-hour time value;returns null if time is not set$(selector).fxtime('val', value)
- set 24-hour time value;value format is hh:mm[:ss], where 0 <= hh <= 23, or null$(selector).fxtime('seg', seg)
- get specified segment value;seg: 0 = hours, 1 = minutes, 2 = seconds, 3 = AM/PM$(selector).fxtime('seg', seg, value)
- set specified segment$(selector).fxtime('seg', seg, null)
- clear specified segment$(selector).fxtime('inc', seg)
- increment specified segment$(selector).fxtime('inc', seg, -1)
- decrement specified segment
The element fires the following custom events:
segblur
- fires when a segment blurssegment number is supplied in the detail.seg property of the event
NB: If you want to be notified of changes to the element, listen for'change' events. 'change' is fired when a user changes the time value,before focus is lost. The element does NOT fire 'input' events.
In addition to numeric time entry, the following keystrokes arerecognised:
- arrow up/down - increment/decrement the current time segment
+
/-
- increment/decrement the current time segment- tab/shift tab - advance to the next (previous) time segment
- arrow right/left - advance to the next (previous) time segment
- delete/backspace - clear the current time segment
A
/P
- set AM or PM (12 hour mode only)
jquery-fxtime is released under theMIT LICENSE
Firefox is a trademark of the Mozilla Foundation ('Mozilla'). Thiswork incorporates no source code from Firefox or Mozilla, and isneither affiliated with nor endorsed by Mozilla.
Copyright © 2022-2024 Jim Mason.
About
Firefox-like time entry plugin for jQuery
Resources
License
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Packages0
Uh oh!
There was an error while loading.Please reload this page.