Creative Concentric Circular Range Slider With JavaScript

Concentric Circular Range Slider is a JavaScript library that enables developers to draw circular scroll bar controls with legend data using JavaScript and SVG elements.

round slider, how to create round slider in html, circular range slider css, gradient range slider, round slider jquery, round slider css

How to make use of it:

1. Create a container for the range slider.

<div id="app"></div>

2. Load the principle JavaScript app.js on the finish of the doc.

<script src="app.js"></script>

3. Define range sliders in a JS array as follows:

const mySliders = [
  {
    radius: 100,
    min: 0,
    max: 100,
    step: 10,
    initialValue: 50,
    color: '#fdcb6e',
    displayName: 'Value 1'
  },
  {
    radius: 160,
    min: 0,
    max: 3000,
    step: 100,
    initialValue: 200,
    color: '#0984e3',
    displayName: 'Value 2'
  },
  {
    radius: 40,
    min: 0,
    max: 200,
    step: 10,
    initialValue: 20,
    color: '#d63031',
    displayName: 'Value 3'
  },
  // more range sliders here
]

4. Initialize the range slider app.

const slider = new Slider({
  DOMselector: '#app',
  sliders: mySliders
});

5. Draw the range sliders on the web page.

slider.draw();

6. Customize the legend data within the JavaScript.

.slider__legend {
  padding: 1rem 3rem 0 0;
  list-style: none;
}

.slider__legend h2 {
  margin-bottom: 1rem;
}

.slider__legend li {
  display: flex;
  margin-bottom: 1rem;
}

.slider__legend li span {
  display: inline-block;
}

.slider__legend li span:first-child {
  height: 20px;
  width: 20px;
  margin-bottom: -2px;
}

.slider__legend li span:nth-child(2) {
  margin: 0 0.5rem;
}

.slider__legend li span:last-child {
  font-size: 1.25rem;
  font-weight: 600;
  font-variant-numeric: tabular-nums lining-nums;
  min-width: 60px;
}

7. Customize the range slider app by overriding the default parameters within the app.js.

// Slider container
this.DOMselector = DOMselector;
this.container = document.querySelector(this.DOMselector);  

// Slider width
this.sliderWidth = 400;                                     

// Slider length
this.sliderHeight = 400;           

// Slider center X coordinate                         
this.cx = this.sliderWidth / 2;                       

// Slider center Y coordinate      
this.cy = this.sliderHeight / 2;                       

// Tau constant     
this.tau = 2 * Math.PI;       

// Sliders array with opts for each slider                              
this.sliders = sliders;                                     

// Spacing between arc fractions
this.arcFractionSpacing = 0.85;                             

// Arc fraction length
this.arcFractionLength = 10;                                

// Arc fraction thickness
this.arcFractionThickness = 25;        

// Arc fraction color for background slider                     
this.arcBgFractionColor = '#D8D8D8';                    

// Slider handle fill color    
this.handleFillColor = '#fff'; 

// Slider handle stroke color                             
this.handleStrokeColor = '#888888';                         

// Slider handle stroke thickness
this.handleStrokeThickness = 3;                             

// Is mouse down
this.mouseDown = false;                                     

// Stores active (selected) slider
this.activeSlider = null;

Creative Circular Range Slider, Concentric Circular Range Slider Plugin/Github

Concentric-Circular-Range-Slider-Demo


See Demo And Download

Official Website(tadejf84): Click Here

This superior jQuery/javascript plugin is developed by tadejf84. For extra advanced usage, please go to the official website.

Related Posts

Input-Values-Using-Mouse-Drag

Create Side Sliders Input Values Using Mouse Drag | Pointer Lock

HTML Range Slider is a lightweight library to create side sliders to adjust values easily and precisely by making use of the Pointer Lock API. Side Slider…

simple-parallax-scrolling-js

Smooth and Lightweight Parallax Scroll Library in Pure Javascript

Lightweight and seamless parallax scrolling library implemented in pure javascript using hardware acceleration for additional performance. Main Features Extremely lightweight with no dependencies A few kilobytes of pure…

Convert-Form-Data-to-JSON

How to Convert Form Data to JSON with HTML Forms | FormsJS

FormsJS is a simple-to-use JavaScript library that covers type subject values to JSON in real time. The items containing the data category will be analyzed automatically. It…

editable-html-table-using-javascript

A Small jQuery Extension to Convert An Editable HTML Table

Editable Table is a small jQuery extension to convert an editable HTML table for fast data entry and validation. A small jQuery extension to convert a static…

jquery.youtube-background

Simple jQuery Plugin for Embedding YouTube Videos As Cover Background

jquery.youtube-background is a jQuery plugin built to facilitate YouTube embeds as cover wallpaper using the YouTube Embed API. There is another jQuery Youtube Video Background plugin that…

Data-Table-Generator-Tabulator

Interactive Data Table Generator with JS/jQuery and JSON | Tabulator

Tabulator allows you to create interactive tables in seconds from any HTML Table, JavaScript array, AJAX data source, or JSON format data. Just include the library in your…