Code Monkey home page Code Monkey logo

touchx / nouislider Goto Github PK

View Code? Open in Web Editor NEW

This project forked from leongersen/nouislider

0.0 1.0 0.0 1.5 MB

noUiSlider is a lightweight JavaScript range slider library. It offers a wide selection of options and settings, and is compatible with a ton of (touch) devices, including those running iOS, Android, Windows 8/8.1/10, Windows Phone 8.1 and Windows Mobile 10.

Home Page: https://refreshless.com/nouislider/

License: Do What The F*ck You Want To Public License

JavaScript 91.16% PHP 0.31% CSS 5.97% Shell 0.12% HTML 2.44%

nouislider's Introduction

noUiSlider

noUiSlider is lightweight JavaScript range slider.

  • No dependencies
  • All modern browsers and IE9+ are supported
  • Fully responsive
  • Touch support on Android, iOS and Windows devices
  • Tons of examples and answered Stack Overflow questions

Quick note: I'm out of town for a while, so support will be slower than usual. Apologies in advance.

License

noUiSlider is licensed WTFPL. You can use it for free and without any attribution, in any personal or commercial project. You may also fork the project and re-release it under another license you prefer.

Documentation

An extensive documentation, including examples, options and configuration details, is available here: noUiSlider documentation.

Bower

bower install nouislider --save

npm install nouislider --save

Changelog

10.1.0 (2017-07-26)

  • Added: multitouch option (#793);

10.0.0 (2017-05-28)

  • Change: Change event listeners to be passive (#785);
  • Fixed: Pips are now updated when calling updateOptions (#669);
  • Fixed: Content Security Policy issue with pips;
  • Added: removePips method;
  • Added: aria support (#685);
  • Added: ariaFormat option (controls aria-valuetext);
  • Fixed: throw a better error when mistakenly trying to initialize noUiSlider with null (#658);
  • Fixed: Made order of events consistent and documented it (#775);
  • Fixed: Border radius of connect bar, white space wrapping of tooltips (#773, #774);
  • Fixed: Slider now uses ownerDocument instead of document (#767);

9.2.0 (2017-01-17)

  • Added: Version number to exceptions;
  • Added: noUiSlider.version holds current version number;
  • Added: Throw exception on invalid pips configuration (#721);
  • Added: Merged pull request that uses less preprocessor to generate CSS (#735);

9.1.0 (2016-12-10)

  • Fixed: Slider not properly handling multitouch (#700, #704);
  • Fixed: Removed a querySelector for the currently active handle (#720);
  • Fixed: Removed iOS/webkit flashes on tap;
  • Fixed: Incorrect error when using margin/limit with a step smaller than 0 (#736);
  • Fixed: Drag option using incorrect cursor arrows (#681);
  • Added: New padding option (#711);
  • Added: Re-introduced .noUi-handle-lower and .noUi-handle-upper classes removed in 9.0.0;
  • Added: Compatibility for legacy connect options removed in 9.0.0;

9.0.0 (2016-09-26)

  • Added: Support for more than 2 handles;
  • Added: format option can be updated (#641);
  • Added: reset method the return slider to start values (#673);
  • Change: connect option is now implemented as a separate node;
  • Change: all event arguments, including the handle number, are now in slider order;
  • Change: updateOptions now modifies the original options object. The reference in slider.noUiSlider.options remains up to date (#678);
  • Change: more events fire when using various behaviour options (#664);
  • Change: on rtl sliders, handles are now visually positioned from the sliders right/bottom edge;
  • Change: events for rtl sliders now fire in the same order as for ltr sliders (with incremental handleNumbers);
  • Change: internal Spectrum component is no longer direction aware;
  • Change: limit and margin must be divisible by step (if set);
  • Removed: .noUi-stacking class. Handles now stack themselves;
  • Removed (returned in 9.1.0): .noUi-handle-lower and .noUi-handle-upper classes;
  • Removed: .noUi-background. Use .noUi-target instead;
  • Removed (backward compatibility in 9.1.0): connect: 'lower' and connect: 'upper'. These settings are replaced by connect: [true, false];
  • Fixed: default tooltip color (#687);
  • Fixed: margin and limit calculated improperly after calling updateOptions with a new range option;
  • Fixed: range option was required in update, even when not updating it (#682);
  • Fixed: Cursor styling is now consistent for disabled handles and sliders (#644);
  • Fixed: Sliders now ignore touches when the screen is touched multiple times (#649, #663, #668);

Devices

Devices/browsers tested:

  • Surface Pro 3 (Windows 10)
  • iPad Air 2 (iOS 9.3)
  • iPad 3 (iOS 8.4)
  • Moto E (Android 5.1, Chrome)
  • Lumia 930 (WP8.1, IE10 mobile)
  • Lumia 930 (WM10, Edge)
  • OnePlus 3 (Android 6)
    • Chrome
    • Firefox
  • Asus S400C (Windows 10, Touch + mouse)
    • Chrome
    • Firefox
    • Edge
    • IE11
    • IE10 (Emulated)
    • IE9 (Emulated)

Browserify

This library is UMD compatible, so you can use it in this way:

var noUiSlider = require('nouislider');

var slider = document.getElementById('slider');

noUiSlider.create(slider, {
  start: 40,
  connect: "lower",
  range: {
    min: 0,
    max: 100
  }
});

Browser support

All major browsers are supported. To support IE8 you'll need to shim several ES5 features.

You can use polyfill.io to easily do so:

<meta http-equiv="X-UA-Compatible" content="IE=Edge">
<!--[if lte IE 8]>
<script src="https://cdn.polyfill.io/v2/polyfill.min.js"></script>
<![endif]-->

nouislider's People

Contributors

leongersen avatar michaeltandy avatar demrks avatar mattpap avatar knickers avatar quentinroy avatar xnakos avatar fdiskas avatar mpospelov avatar mciparelli avatar lennerd avatar jesusprubio avatar falsefalse avatar vsn4ik avatar lknop avatar carlosbensant avatar tnajdek avatar graingert avatar redox avatar selkinvitaly avatar pmacmillan avatar nickmccurdy avatar matthlee avatar cabralmartin avatar markshust avatar jdutriaux avatar j-griffin avatar ishaba avatar hampei avatar fschaefer avatar

Watchers

vincent guo 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.