GithubHelp home page GithubHelp logo

kla-ko / toolcool-range-slider Goto Github PK

View Code? Open in Web Editor NEW

This project forked from mzusin/toolcool-range-slider

0.0 0.0 0.0 10.8 MB

Responsive range slider library written in typescript and using web component technologies. Pure JavaScript without additional dependencies. It has a rich set of settings, including any number of pointers (knobs), vertical and horizontal slider, touch, mousewheel and keyboard support, local and session storage, range dragging, and RTL support.

Home Page: https://range-slider.toolcool.org/

License: MIT License

JavaScript 70.11% TypeScript 20.79% CSS 2.46% HTML 6.17% GLSL 0.45%

toolcool-range-slider's Introduction

Tool Cool Range Slider

GitHub license GitHub package.json version npm NPM Featured on Openbase Twitter

Responsive range slider library written in typescript and using web component technologies. Pure JavaScript without additional dependencies. It has a rich set of settings, including any number of pointers (knobs), vertical and horizontal slider, touch, mousewheel and keyboard support, local and session storage, range dragging, and RTL support. The functionality of the library can be extended using plugins.

Links

Any Number of Pointers

The library supports any number of pointers (knobs/handles): one-pointer range slider, two-pointers range slider, or as many as you need.

Range Slider

Mobile Ready

Responsive and mobile-ready range slider that looks good on any devices ๐Ÿ“ฑ. It supports touch, mousewheel events, and keyboard.

Accessibility

It accessible via ARIA-attributes ๐Ÿ›ก๏ธ

Range Slider

Marks Plugin

Range slider library has a standalone Marks Plugin. This allows to generate points along the slider:

Range Slider

ES6 JavaScript & Typescript

The library is built with Typescript and does not use external dependencies ๐Ÿ”“. The core is 28KB minified or 9KB compressed (GZip).

Themes ๐ŸŽจ

The library has additional theme plugins with a ready-made set of styles such as gradients, glass, pointer shapes and more. It's also possible to develop your own theme as an external plugin.

range-slider-3.mov

Styles & Design

The library has multiple options for customizing ๐Ÿ”ง the appearance of the slider. Width, height, border radius, colors, hover and focus, and other properties can be customized using the slider attributes.

Images and SVGs can be used as pointers.

Direction & Orientation

The library supports horizontal and vertical orientation ๐ŸŒ. It also supports left to right and right to left directions for a horizontal slider, and top to bottom and bottom to top for vertical sliders.

Range Slider

Range Slider

Numbers, Text, or Range

The slider range can be defined by a minimum and maximum numbers. Another option is to provide a list of individual (discrete) values. Both text โœ๏ธ and numeric data are supported.

Range Slider

Local & Session Storage

Local storage ๐Ÿ’พ and session storage support as a standalone plugin. The user selection will be saved and restored after page refresh or navigation from other pages.

Range Slider

Moving Tooltip Plugin

Range slider library has a standalone Moving Tooltip Plugin. The plugin adds a moving tooltip to each pointer. You can change the tooltip color, size, and distance to pointer.

Range Slider

Range Dragging

The library also supports range dragging:

Range Slider

Origin at Center

The library also has an Origin at Center Plugin. This plugin makes the origin of the pointer always in the center.

Range Slider

Other Features

  • Based on web component technologies.
  • Allows programmatic attribute changes ๐Ÿ’ป
  • Simple dynamic rendering after ajax requests or delays.
  • Disabled/enabled range slider (including API).
  • Possibility to disable only one pointer.
  • Non-linear range slider ๐Ÿ“‰
  • Optional animation on panel click.
  • Works well with Bootstrap and other CSS frameworks ๐Ÿ‘
  • No CSS conflicts due to web components.
  • Automatically generated labels as a standalone plugin.
  • Any number of sliders on one page.
  • Supports two (and more) pointers overlap, pointers max and min distance.
  • The functionality of the library can be extended using plugins.
  • The range slide can be used in React and other frameworks.
  • Extensive API based on TypeScript. Range Slider

Plugins

License

MIT license

It can be used for free in any personal or commercial project ๐ŸŽ

Tool Cool Range Slider

toolcool-range-slider's People

Contributors

toolcool-org avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.