Public
Edited
Nov 22, 2023
1 fork
Insert cell
Insert cell
viewof sliderNoChangeEvent = interval([0,10],{updateOnSlide: false})
Insert cell
sliderNoChangeEvent
Insert cell
viewof sliderChangeEvent = interval([0,10])
Insert cell
sliderChangeEvent
Insert cell
function interval(range = [], options = {}) {
const [min = 0, max = 1] = range;
const {
step = 0.001,
label = null,
value = [min, max],
format = ([start, end]) => `${start} … ${end}`,
updateOnSlide = true,
color,
width,
theme
} = options;
const ele = intervalRaw(range, options);
let container = html`<div></div>`;

if (!updateOnSlide) {
ele.addEventListener("input", (evt) => {
evt.stopPropagation();
});

ele.addEventListener("change", (evt) => {
evt.stopPropagation();
container.value = ele.value;
container.dispatchEvent(new Event("input", { bubbles: true }));
});
}

container.appendChild(ele);
return container;
}
Insert cell
import {interval as intervalRaw} from '@mootari/range-slider'
Insert cell

Purpose-built for displays of data

Observable is your go-to platform for exploring data and creating expressive data visualizations. Use reactive JavaScript notebooks for prototyping and a collaborative canvas for visual data exploration and dashboard creation.
Learn more