Basculer le menu
Changer de menu des préférences
Basculer le menu personnel
Non connecté(e)
Votre adresse IP sera visible au public si vous faites des modifications.

« MediaWiki:Gadget-Accueil.beffroi.js » : différence entre les versions

Page de l’interface de MediaWiki
WikiThionvilleSyncBot (discussion | contributions)
Sync homepage from repository (commit b06f0a0)
 
WikiThionvilleSyncBot (discussion | contributions)
Sync homepage from repository (commit 0e34c54)
 
Ligne 1 : Ligne 1 :
( function ( mw ) {
( function ( mw ) {
'use strict';
"use strict";


var accueil = mw.libs && mw.libs.wikithionvilleAccueil;
const accueil = mw.libs && mw.libs.wikithionvilleAccueil;
if ( !accueil ) return;


if ( !accueil ) {
accueil.initBeffroiMotion = root => {
return;
const image = root.querySelector("#img-beffroi");
}
const section = root.querySelector("#plusdinfo");
let frame = null;


accueil.initBeffroiMotion = function ( root ) {
if (!image || !section || accueil.reduceMotion)
var image = root.querySelector( '#img-beffroi' );
var section = root.querySelector( '#plusdinfo' );
var frame = null;
 
if ( !image || !section || accueil.reduceMotion ) {
return;
return;
}


function update() {
function update() {
var maxOffset = Math.max( section.offsetTop, 1 );
const maxOffset = Math.max(section.offsetTop, 1);
var progress = accueil.clamp( window.pageYOffset / maxOffset, 0, 1 );
const progress = accueil.clamp(window.scrollY / maxOffset, 0, 1);
const offset = ((1 - progress) * 30).toFixed(2);


frame = null;
frame = null;
image.style.transform = 'translate3d(-' + ( progress * 30 ).toFixed( 2 ) + 'vw, 0, 0)';
image.style.transform = `translate3d(${offset}vw, -50%, 0)`;
}
}


function requestUpdate() {
function requestUpdate() {
if ( frame !== null ) {
if (frame) return;
return;
}


frame = window.requestAnimationFrame( update );
frame = window.requestAnimationFrame(update);
}
}


window.addEventListener( 'scroll', requestUpdate, { passive: true } );
window.addEventListener("scroll", requestUpdate, { passive: true });
window.addEventListener( 'resize', requestUpdate );
window.addEventListener("resize", requestUpdate);
requestUpdate();
requestUpdate();
};
};
}( mediaWiki ) );
}( mediaWiki ) );

Dernière version du 12 juin 2026 à 13:00

( function ( mw ) {
	"use strict";

	const accueil = mw.libs && mw.libs.wikithionvilleAccueil;
	if ( !accueil ) return;

	accueil.initBeffroiMotion = root => {
		const image = root.querySelector("#img-beffroi");
		const section = root.querySelector("#plusdinfo");
		let frame = null;

		if (!image || !section || accueil.reduceMotion)
			return;

		function update() {
			const maxOffset = Math.max(section.offsetTop, 1);
			const progress = accueil.clamp(window.scrollY / maxOffset, 0, 1);
			const offset = ((1 - progress) * 30).toFixed(2);

			frame = null;
			image.style.transform = `translate3d(${offset}vw, -50%, 0)`;
		}

		function requestUpdate() {
			if (frame) return;

			frame = window.requestAnimationFrame(update);
		}

		window.addEventListener("scroll", requestUpdate, { passive: true });
		window.addEventListener("resize", requestUpdate);
		requestUpdate();
	};
}( mediaWiki ) );