Joycon.js
- Supports PlayStation & Xbox
- Really simple API
- ~2.5KB minified
- Vibration support
Get it
Add this line to the <body>
:
<script src="https://joycon.js.org/Joycon.min.js"></script>
Here’s a demo.
API
Buttons
const controllers = Joycon.controllers;
controllers.on.press('start', (value) => {
console.log('pressed start!', value); // value is 0 to 1
});
Button can be a
, b
, x
, y
, start
, left-trigger
, etc. (full list below)
Joystick
const controllers = Joycon.controllers;
controllers.on.move('left-joystick', (value) => {
console.log('moved left joystick!', value.x, value.y); // value is -1 to 1 down/right
});
Also right-joystick
.
Controller connect
const controllers = Joycon.controllers;
controllers.on.connect((controller) => {
console.log('controller connected!', controller);
});
controllers.on.disconnect((controller) => {
console.log('controller disconnected!', controller);
});
Vibrate
const controllers = Joycon.controllers;
// preset can be mild, medium or strong
controllers.vibrate({ preset: 'medium' }, 250); // -> time in ms
// or you can choose your own values
controllers.vibrate({
mildMotorIntensity: 0.5,
strongMotorIntensity: 0.5
}, 250);
Remove listener
const controllers = Joycon.controllers;
controllers.removeListener('left-trigger');
Remove Joystick move
listeners with left-joystick-move
.
Remove controller connect
listeners with controller-connect
.
Button list
a | left-shoulder | select | dpad-up | home |
b | right-shoulder | start | dpad-down | share |
x | left-trigger | left-joystick | dpad-left | |
y | right-trigger | right-joystick | dpad-right |
See above on how to use these.
License
Thanks for coming by!