Youtube-like time seek slider for React. Fork of react-video-seek-slider for enhancements like:
- onSeeking callback gets time with millisecond precision
- Seek event fires immediately on mousedown and touchstart
- Thumb dragging does not cause text selection
- Time tooltip shows correct time text for time smaller than 60
- Time tooltip stays inside left and right boundary of the seek track
- Events: onSeeking, onSeekend
Video seek slider demo react-video-seek-slider
npm i react-time-seek-slider
For TypeScript usage there is a index.d.ts in node_modules folder
import {TimeSeekSlider} from 'react-time-seek-slider';
or
const TimeSeekSlider = require('react-time-seek-slider');
Also you have to use css file in a lib folder in:
import 'react-time-seek-slider/lib/time-seek-slider.css';
//JSX
<TimeSeekSlider
max={1152}
currentTime={this.state.currentTime}
progress={400}
onSeeking={(time)=>{
this.setState({
currentTime:time
});
}}
offset={0}
secondsPrefix="00:00:"
minutesPrefix="00:"
/>
max
(number, required) - Max sliders valuecurrentTime
(number, required) - Current sliders valueprogress
(number) - Current buffered progresshideSeekTimes
(boolean) - hide hover current time (Default: false)onSeeking
((time:number, offsetTime:number)=>void, required) - script to be run when thumb changes positiononSeekend
(()=>void, default: null) - script to be run when thumb change endsoffset
(number, default:0) - when you need start slider with offset timesecondsPrefix
(string, default: '') - when time is less than one minutes you can use prefix time as "00:00:"minutesPrefix
(string, default: '') - when time is less than one hour you can use prefix time as "00:"
just use:
$ yarn or $ npm i
$ npm run dev
open your browser http://localhost:3000
$ npm run production