Fix playground not re-reading inputs after page reload
This commit is contained in:
parent
3c79a5562e
commit
d4df59b23b
@ -49,21 +49,37 @@ var scaleY = 100;
|
|||||||
var fudgeProperty = 'posx';
|
var fudgeProperty = 'posx';
|
||||||
|
|
||||||
const fudgePropertyInput = document.getElementById('fudgeproperty');
|
const fudgePropertyInput = document.getElementById('fudgeproperty');
|
||||||
fudgePropertyInput.addEventListener('change', event => {
|
fudgePropertyInput.addEventListener('change', updateFudgeProperty);
|
||||||
fudgeProperty = event.target.value;
|
fudgePropertyInput.addEventListener('init', updateFudgeProperty);
|
||||||
});
|
|
||||||
|
|
||||||
const fudgeInput = document.getElementById('fudge');
|
const fudgeInput = document.getElementById('fudge');
|
||||||
|
|
||||||
const fudgeMinInput = document.getElementById('fudgeMin');
|
const fudgeMinInput = document.getElementById('fudgeMin');
|
||||||
fudgeMinInput.addEventListener('change', event => {
|
fudgeMinInput.addEventListener('change', updateFudgeMin);
|
||||||
fudgeInput.min = event.target.valueAsNumber;
|
fudgeMinInput.addEventListener('init', updateFudgeMin);
|
||||||
});
|
|
||||||
|
|
||||||
const fudgeMaxInput = document.getElementById('fudgeMax');
|
const fudgeMaxInput = document.getElementById('fudgeMax');
|
||||||
fudgeMaxInput.addEventListener('change', event => {
|
fudgeMaxInput.addEventListener('change', updateFudgeMax);
|
||||||
|
fudgeMaxInput.addEventListener('init', updateFudgeMax);
|
||||||
|
|
||||||
|
function updateFudgeProperty(event) {
|
||||||
|
fudgeProperty = event.target.value;
|
||||||
|
}
|
||||||
|
|
||||||
|
function updateFudgeMin(event) {
|
||||||
|
fudgeInput.min = event.target.valueAsNumber;
|
||||||
|
}
|
||||||
|
|
||||||
|
function updateFudgeMax(event) {
|
||||||
fudgeInput.max = event.target.valueAsNumber;
|
fudgeInput.max = event.target.valueAsNumber;
|
||||||
});
|
}
|
||||||
|
|
||||||
|
// Ugly hack to properly set the values of the inputs on page load,
|
||||||
|
// since they persist across reloads, at least in Firefox.
|
||||||
|
// The best ugly hacks are the ones that reduce code duplication!
|
||||||
|
fudgePropertyInput.dispatchEvent(new CustomEvent("init"));
|
||||||
|
fudgeMinInput.dispatchEvent(new CustomEvent("init"));
|
||||||
|
fudgeMaxInput.dispatchEvent(new CustomEvent("init"));
|
||||||
|
|
||||||
const handleFudgeChanged = function (event) {
|
const handleFudgeChanged = function (event) {
|
||||||
fudge = event.target.valueAsNumber;
|
fudge = event.target.valueAsNumber;
|
||||||
@ -114,6 +130,7 @@ const handleFudgeChanged = function (event) {
|
|||||||
};
|
};
|
||||||
fudgeInput.addEventListener('input', handleFudgeChanged);
|
fudgeInput.addEventListener('input', handleFudgeChanged);
|
||||||
fudgeInput.addEventListener('change', handleFudgeChanged);
|
fudgeInput.addEventListener('change', handleFudgeChanged);
|
||||||
|
fudgeInput.addEventListener('load', handleFudgeChanged);
|
||||||
|
|
||||||
canvas.addEventListener('mousemove', event => {
|
canvas.addEventListener('mousemove', event => {
|
||||||
var mousePos = getMousePosition(event, canvas);
|
var mousePos = getMousePosition(event, canvas);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user