Scrollbar modules for pixi.js
npm install @masatomakino/pixijs-basic-scrollbar --save-dev
pixijs-basic-scrollbar depend on pixi.js and @tweenjs/tween.js
pixijs-basic-scrollbar is composed of ES6 modules and TypeScript d.ts files.
At first, import classes.
import { SliderView } from "@masatomakino/pixijs-basic-scrollbar";
const slider = new SliderView({
base: new Graphics(...),
bar: new Graphics(...),
button: new Graphics(...),
mask: new Graphics(...),
minPosition: 0,
maxPosition: 320, //slider width
rate: 0.0,
canvas : app.canvas // Option : global drag on canvas element
});
slider.on("slider_change", e => {
console.log(e.rate);
});
stage.addChild(slider);
Tween.js needs update in rendering loop.
PIXI.Ticker.shared.add((e) => {
TWEEN.update(performance.now());
});
Since v7, pixi.js does not get pointer events where nothing is drawn. Give a canvas element as an argument so that dragging continues outside the slider.
const slider = new SliderView(
...,
canvas: app.canvas
});