Différences entre versions de « MediaWiki:Timeless.js »

De wikiup
Sauter à la navigation Sauter à la recherche
(Page créée avec « →‎Tout JavaScript ici sera chargé pour les utilisateurs de l’habillage Timeless : $(window).on("load", function() { console.log('JavaScript chargé'); var t… »)
 
Balise : Contenu remplacé
 
Ligne 1 : Ligne 1 :
 
/* Tout JavaScript ici sera chargé pour les utilisateurs de l’habillage Timeless */
 
/* Tout JavaScript ici sera chargé pour les utilisateurs de l’habillage Timeless */
 
$(window).on("load", function() {
 
    console.log('JavaScript chargé');
 
 
    var themeButton = $('<button>Changer le thème</button>')
 
        .attr('id', 'themeButton')
 
        .attr('aria-pressed', 'false')
 
        .attr('aria-label', 'Changer le thème entre clair et sombre')
 
        .attr('role', 'button');
 
 
    $('#mw-content-text').prepend(themeButton);
 
 
    // Récupérer le thème sauvegardé dans localStorage
 
    var savedTheme = localStorage.getItem('theme');
 
    console.log('Thème sauvegardé:', savedTheme);
 
 
    if (savedTheme === 'dark') {
 
        $('body').addClass('dark-theme');
 
        themeButton.text('Passer au thème clair');
 
        themeButton.attr('aria-pressed', 'true');
 
    } else {
 
        $('body').removeClass('dark-theme');
 
        themeButton.text('Passer au thème sombre');
 
        themeButton.attr('aria-pressed', 'false');
 
    }
 
 
    themeButton.click(function() {
 
        var isDarkTheme = $(this).attr('aria-pressed') === 'true';
 
        console.log('État actuel du thème (isDarkTheme):', isDarkTheme);
 
 
        if (isDarkTheme) {
 
            // Si le thème sombre est activé, on passe au thème clair
 
            console.log('Passage au thème clair');
 
            $('body').removeClass('dark-theme');
 
            themeButton.text('Passer au thème sombre');
 
            themeButton.attr('aria-pressed', 'false');
 
            localStorage.setItem('theme', 'light');
 
        } else {
 
            // Si le thème clair est activé, on passe au thème sombre
 
            console.log('Passage au thème sombre');
 
            $('body').addClass('dark-theme');
 
            themeButton.text('Passer au thème clair');
 
            themeButton.attr('aria-pressed', 'true');
 
            localStorage.setItem('theme', 'dark');
 
        }
 
 
        // Afficher l'état du bouton après changement
 
        console.log('Thème après clic:', $(this).attr('aria-pressed'));
 
        console.log('Classe appliquée au body:', $('body').attr('class'));
 
    });
 
});
 

Version actuelle datée du 11 septembre 2024 à 15:46

/* Tout JavaScript ici sera chargé pour les utilisateurs de l’habillage Timeless */