[BBCode] Compte à rebours

Des tutos, des astuces et des BBCodes pour phpBB.
Pour toute demande de support, merci d'utiliser le forum de... support.
Répondre
Avatar du membre
cabot
Administrateur du site
Messages : 179
Enregistré le : 03 nov. 2011, 11:29
Contact :

[BBCode] Compte à rebours

Message par cabot » 27 oct. 2022, 14:33

Ce BBCode permet d'afficher un simple compte à rebours pour une date formatée à la norme ISO 8601.

Utilisation du BBCode :

Code : Tout sélectionner

[compteur]{TEXT}[/compteur]
Code HTML de remplacement :

Code : Tout sélectionner

<p class="bg3" data-countdown="{TEXT}" style="border-radius: 4px; min-width: 140px;display: inline-block; text-align: center; padding: 0 0.5em;"></p>
<script>
[].forEach.call(document.querySelectorAll("[data-countdown]"), function (el) {
	var countDownDate = new Date(el.getAttribute("data-countdown")).getTime();
	var x = setInterval(function () {
		var now = new Date().getTime();
		var distance = countDownDate - now;
		var days =  Math.floor(distance / (1000 * 60 * 60 * 24));
		var hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
		var minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60));
		var seconds = Math.floor((distance % (1000 * 60)) / 1000);
		el.innerHTML = days + "j " + hours + "h " + minutes + "m " + seconds + "s ";
		if (distance < 0) {
			clearInterval(x); 
			el.innerHTML = "Expiré le " + new Date(countDownDate).toLocaleDateString();
		}
	});
})
</script>
Ligne d’aide :

Code : Tout sélectionner

Affiche un compte à rebours pour une date au format ISO 8601. (Année, mois, jour)
Ex : [compteur]2025-01-31[/compteur]
Compte à rebours actif :


Compte à rebours expiré :



Source du script

Répondre