Note: After saving, you may have to bypass your browser's cache to see the changes.
$(document).ready(function() { if (mw.config.get('wgPageName') === 'Main_Page1') { // Image de fond $('body').css({ 'background-image': 'url("https://www.shadowera.com/landing/img/developers.jpg")', 'background-size': 'cover', 'background-attachment': 'fixed', 'background-repeat': 'no-repeat' }); // Ajoutez un fond semi-transparent $('body').append('<div class="overlay"></div>'); $('.overlay').css({ 'position': 'absolute', 'top': '55px', // Spécifiez la position en pixels 'left': '70px', // Spécifiez la position en pixels 'width': '90%', 'height': '90%', 'background-color': 'rgba(24, 29, 35, 0.9)', // Votre couleur semi-transparente 'z-index': '0', // Garder un z-index pour l'overlay 'pointer-events': 'auto', // Permettre les clics sur l'overlay (ce qui inclut le bouton) 'border-radius': '10px' // Arrondir les bords de l'overlay }); // Appliquer le style au contenu du wiki $('#mw-content-text').css({ 'position': 'relative', 'z-index': '1', // Mettre le contenu au-dessus du fond 'color': 'white', // Assurez-vous que le texte soit lisible 'padding': '20px' // Ajouter du padding pour l'esthétique }); // Assurez-vous que la barre de navigation est au-dessus de l'overlay $('.fandom-community-header').css('z-index', '2'); // Barre de navigation au-dessus // Appliquer des z-index différents aux titres var zIndexes = [2, 3, 4, 5, 6]; // Ajustez les z-index selon vos besoins $('.mw-headline').each(function(index) { if (index < zIndexes.length) { $(this).css({ 'z-index': zIndexes[index], // Applique le z-index correspondant 'color': 'white' // Mettre le texte en blanc }); } }); // Assurez-vous que le bouton soit au-dessus de l'overlay $('.button.dropdown.small.secondary.radius').css('z-index', '3'); // Définit un z-index supérieur à celui de l'overlay // Rendre le titre blanc et devant l'overlay $('.title').css({ 'color': 'white', // Titre en blanc 'z-index': '4', // Assurez-vous que le titre soit devant l'overlay 'position': 'relative' // Assurez-vous que le titre a un positionnement relatif }); // Rendre le tagline moins blanc et devant l'overlay $('#tagline').css({ 'color': 'rgba(255, 255, 255, 0.5)', // Tagline en blanc avec opacité 'z-index': '3', // Assurez-vous que le tagline soit devant l'overlay 'position': 'relative' // Assurez-vous que le tagline a un positionnement relatif }); } }); // Charger le module collapsible de MediaWiki pour rendre la section repliable. mw.loader.load('mediawiki.collapsible'); // Cette fonction affiche ou masque un élément avec l'ID spécifié. // Si l'élément est masqué ('none' ou vide), il est affiché en tant que 'table-row-group'. // Sinon, il est masqué. function toggleContent(id) { var element = document.getElementById(id); if (element.style.display === 'none' || element.style.display === '') { element.style.display = 'table-row-group'; } else { element.style.display = 'none'; } } /* ----------------------------- */ /* Custom Script for Highlighting Backticks */ /* Applies custom visual styles to text wrapped in backticks without altering the content */ /* ----------------------------- */ // This script waits for the document to fully load, and applies a visual style // to any text that is surrounded by backticks (` `), without altering the content. document.addEventListener('DOMContentLoaded', function () { // Check if we are in edit mode (to avoid changing the editor content) if (document.querySelector('#wpTextbox1') !== null) { return; // Do nothing in edit mode } /** * Function to highlight text between backticks by wrapping it in a span element * @param {string} text * @returns {string} */ function highlightBackticks(text) { const backtickRegex = /`([^`]+)`/g; // Matches text between backticks const styledText = text.replace(backtickRegex, function (match, p1) { return '<span class="backtick-style">' + p1 + '</span>'; }); return styledText; } /** * Traverse all text nodes and apply the backtick highlighting * @param {Node} node */ function traverseTextNodes(node) { if (node.nodeType === 3 && node.nodeValue.includes('`')) { // Only process text nodes const span = document.createElement('span'); span.innerHTML = highlightBackticks(node.nodeValue); node.parentNode.replaceChild(span, node); } else if (node.nodeType === 1 && node.childNodes) { // Traverse element children node.childNodes.forEach(traverseTextNodes); } } // Apply the changes to the entire body traverseTextNodes(document.body); }); console.log('Backtick script loaded');