MediaWiki:Common.js: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
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. */ | ||
const animdelay=20; | const animdelay = 20; | ||
const animdelta=1; | const animdelta = 1; | ||
const LEDx = 100; | |||
const LEDy = 300; | |||
const LEDs = 15; | |||
function uartanim(){ | function uartanim(){ | ||
Line 42: | Line 45: | ||
var http = document.getElementById('demoHTTP'); | var http = document.getElementById('demoHTTP'); | ||
var uart = document.getElementById('demoUART'); | var uart = document.getElementById('demoUART'); | ||
var led = document.getElementById('demoLED'); | |||
http.style.top = '0px'; | http.style.top = '0px'; | ||
http.style.left = '0px'; | http.style.left = '0px'; | ||
Line 49: | Line 53: | ||
uart.style.left = '0px'; | uart.style.left = '0px'; | ||
uart.innerHTML = val; | uart.innerHTML = val; | ||
led.style.top = LEDx + 'px'; | |||
led.style.left = LEDy + 'px'; | |||
led.style.width = LEDs + 'px'; | |||
led.style.height = LEDs + 'px'; | |||
led.style.background_color = 'red'; | |||
led.style.display = 'flex'; | |||
setTimeout(httpanim,animdelay); | setTimeout(httpanim,animdelay); | ||
} | } |
Revision as of 19:54, 3 July 2023
/* Any JavaScript here will be loaded for all users on every page load. */
const animdelay = 20;
const animdelta = 1;
const LEDx = 100;
const LEDy = 300;
const LEDs = 15;
function uartanim(){
var uart = document.getElementById('demoUART');
var arrow = document.getElementById('arrowUART');
var max = arrow.offsetWidth - uart.offsetWidth;
var cur = parseInt(uart.style.left,10);
if ( cur < max ) {
cur += animdelta;
uart.style.left = cur + 'px';
setTimeout(uartanim,animdelay);
}
else {
uart.style.left = '0px';
uart.style.display = 'none';
}
}
function httpanim(){
var http = document.getElementById('demoHTTP');
var arrow = document.getElementById('arrowHTTP');
var max = arrow.offsetWidth - http.offsetWidth;
var cur = parseInt(http.style.left,10);
if ( cur < max ) {
cur += animdelta;
http.style.left = cur + 'px';
setTimeout(httpanim,animdelay);
}
else {
http.style.left = '0px';
http.style.display = 'none';
var uart = document.getElementById('demoUART');
uart.style.display = 'flex';
uartanim();
}
}
function initanim(val){
var http = document.getElementById('demoHTTP');
var uart = document.getElementById('demoUART');
var led = document.getElementById('demoLED');
http.style.top = '0px';
http.style.left = '0px';
http.innerHTML = 'POST';
http.style.display = 'flex';
uart.style.top = '0px';
uart.style.left = '0px';
uart.innerHTML = val;
led.style.top = LEDx + 'px';
led.style.left = LEDy + 'px';
led.style.width = LEDs + 'px';
led.style.height = LEDs + 'px';
led.style.background_color = 'red';
led.style.display = 'flex';
setTimeout(httpanim,animdelay);
}
function launchanim(){
var cursor = document.getElementById('democursor');
var x = parseInt(cursor.style.left,10);
if ( isNaN(x) ) x = 0;
initanim(2*x);
}
function cursormove(e){
var slider = document.getElementById('demoslider');
var cursor = document.getElementById('democursor');
var bounds = slider.getBoundingClientRect();
var x = e.pageX - bounds.left;
var max = bounds.width - cursor.offsetWidth;
if ( x > max ) x = max;
if ( x < 0 ) x = 0;
if (e.buttons != 0) {
cursor.style.left = Math.floor(x)+'px';
}
}
function demoslider(){
var slider = document.getElementById('demoslider');
if(slider != null){
slider.onmousemove = cursormove;
slider.onmouseup = launchanim;
}
}
demoslider();