MediaWiki:Common.js: Difference between revisions

From Wiki PeiP systèmes embarqués
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();