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. */ | ||
function | function setupLevelSliders() { | ||
// find all slider wrappers | |||
const wrappers = document.querySelectorAll('.level-slider-wrapper'); | |||
const | |||
wrappers.forEach(wrapper => { | |||
const slider = wrapper.querySelector('input[type="range"]'); | |||
const valueDisplay = wrapper.querySelector('.levelValue'); | |||
const increase = wrapper.querySelector('.increase'); | |||
const decrease = wrapper.querySelector('.decrease'); | |||
if (!slider || !valueDisplay || !increase || !decrease) return; | |||
valueDisplay.textContent = slider.value; | |||
slider.addEventListener('input', () => { | |||
valueDisplay.textContent = slider.value; | |||
}); | |||
increase.addEventListener('click', () => { | |||
if (slider.value < parseInt(slider.max)) slider.value = parseInt(slider.value) + 1; | |||
valueDisplay.textContent = slider.value; | |||
}); | |||
decrease.addEventListener('click', () => { | |||
if (slider.value > parseInt(slider.min)) slider.value = parseInt(slider.value) - 1; | |||
valueDisplay.textContent = slider.value; | |||
}); | |||
// initialize display | |||
valueDisplay.textContent = slider.value; | valueDisplay.textContent = slider.value; | ||
}); | }); | ||
} | } | ||
document.addEventListener('DOMContentLoaded', setupLevelSliders); | |||
document.addEventListener('DOMContentLoaded', | |||
Revision as of 21:52, 18 December 2025
/* Any JavaScript here will be loaded for all users on every page load. */
function setupLevelSliders() {
// find all slider wrappers
const wrappers = document.querySelectorAll('.level-slider-wrapper');
wrappers.forEach(wrapper => {
const slider = wrapper.querySelector('input[type="range"]');
const valueDisplay = wrapper.querySelector('.levelValue');
const increase = wrapper.querySelector('.increase');
const decrease = wrapper.querySelector('.decrease');
if (!slider || !valueDisplay || !increase || !decrease) return;
slider.addEventListener('input', () => {
valueDisplay.textContent = slider.value;
});
increase.addEventListener('click', () => {
if (slider.value < parseInt(slider.max)) slider.value = parseInt(slider.value) + 1;
valueDisplay.textContent = slider.value;
});
decrease.addEventListener('click', () => {
if (slider.value > parseInt(slider.min)) slider.value = parseInt(slider.value) - 1;
valueDisplay.textContent = slider.value;
});
// initialize display
valueDisplay.textContent = slider.value;
});
}
document.addEventListener('DOMContentLoaded', setupLevelSliders);