Bamp (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung Markierung: Manuelle Zurücksetzung |
Bamp (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
Zeile 5: | Zeile 5: | ||
const tempElement = document.createElement('div'); | const tempElement = document.createElement('div'); | ||
tempElement.innerHTML = htmlString; | tempElement.innerHTML = htmlString; | ||
if (tempElement.querySelector('div')) { | |||
tempElement.querySelector('div').remove(); | |||
} | } | ||
Version vom 5. August 2023, 14:42 Uhr
/* Das folgende JavaScript wird für Benutzer des Citizen-Skins geladen */ function removeFirstDiv(htmlString) { // Schritt 1: Ein temporäres DOM-Element erstellen const tempElement = document.createElement('div'); tempElement.innerHTML = htmlString; if (tempElement.querySelector('div')) { tempElement.querySelector('div').remove(); } const paragraphs = tempElement.querySelectorAll('p'); // Schritt 3: Das letzte <p>-Element entfernen, wenn vorhanden const lastParagraph = paragraphs[paragraphs.length - 1]; if (lastParagraph) { lastParagraph.remove(); } // Schritt 4: Das modifizierte HTML zurückgeben return tempElement.innerHTML; } // Überprüfe, ob die Meldung bereits auf der aktuellen Seite geladen wurde if (!$('.global-message').length) { // Lade den Inhalt der "MediaWiki:GlobalMessage"-Seite asynchron $.ajax({ url: mw.util.getUrl('MediaWiki:GlobalMessage', { action: 'render' }), // action=render, um nur den Inhalt zu erhalten dataType: 'html' }).done(function(data) { // Füge den Inhalt der "MediaWiki:GlobalMessage"-Seite am Anfang des Inhaltsbereichs hinzu $('#mw-content-text').prepend('<div class="global-message" style="margin-bottom: 10px">' + removeFirstDiv(data) + '</div>'); }); }