MediaWiki:Common.js: Difference between revisions
Jump to navigation
Jump to search
No edit summary Tag: Reverted |
No edit summary Tag: Reverted |
||
| Line 1: | Line 1: | ||
/* Any JavaScript here will be loaded for all users on every page load. */ | /* Any JavaScript here will be loaded for all users on every page load. */ | ||
/* | /* Arrow slider using links for MediaWiki */ | ||
function setupLevelSlider(wrapperSelector, min, max) { | function setupLevelSlider(wrapperSelector, min, max) { | ||
| Line 17: | Line 17: | ||
}; | }; | ||
increase.addEventListener('click', () => { | increase.addEventListener('click', (e) => { | ||
e.preventDefault(); | |||
let current = parseInt(valueDisplay.dataset.value, 10); | let current = parseInt(valueDisplay.dataset.value, 10); | ||
if (current < max) { | if (current < max) { | ||
| Line 25: | Line 26: | ||
}); | }); | ||
decrease.addEventListener('click', () => { | decrease.addEventListener('click', (e) => { | ||
e.preventDefault(); | |||
let current = parseInt(valueDisplay.dataset.value, 10); | let current = parseInt(valueDisplay.dataset.value, 10); | ||
if (current > min) { | if (current > min) { | ||
| Line 33: | Line 35: | ||
}); | }); | ||
// | // initialize | ||
updateDisplay(); | updateDisplay(); | ||
} | } | ||
Revision as of 22:08, 18 December 2025
/* Any JavaScript here will be loaded for all users on every page load. */
/* Arrow slider using links for MediaWiki */
function setupLevelSlider(wrapperSelector, min, max) {
const wrapper = document.querySelector(wrapperSelector);
if (!wrapper) return;
const valueDisplay = wrapper.querySelector('.levelValue');
const increase = wrapper.querySelector('.increase');
const decrease = wrapper.querySelector('.decrease');
if (!valueDisplay || !increase || !decrease) return;
const updateDisplay = () => {
valueDisplay.textContent = valueDisplay.dataset.value;
};
increase.addEventListener('click', (e) => {
e.preventDefault();
let current = parseInt(valueDisplay.dataset.value, 10);
if (current < max) {
valueDisplay.dataset.value = current + 1;
updateDisplay();
}
});
decrease.addEventListener('click', (e) => {
e.preventDefault();
let current = parseInt(valueDisplay.dataset.value, 10);
if (current > min) {
valueDisplay.dataset.value = current - 1;
updateDisplay();
}
});
// initialize
updateDisplay();
}
// On page load
document.addEventListener('DOMContentLoaded', () => {
setupLevelSlider('.level-slider-wrapper', 1, 10);
});