MediaWiki:Mobile.js: Unterschied zwischen den Versionen

Keine Bearbeitungszusammenfassung
Markierung: Zurückgesetzt
Keine Bearbeitungszusammenfassung
 
(4 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
console.log('Mobile.js aktiv', mw.config.get('skin'));
/* Minerva: Alle Abschnitte automatisch ausklappen */
(function () {
  if (!window.mw) return;
  if (mw.config.get('skin') !== 'minerva') return;
 
  function expandAll() {
    // 1) Alle Toggle-Buttons, die noch "zu" sind, anklicken
    document.querySelectorAll('button.section-toggle[aria-expanded="false"], [data-event-name="section-toggle"][aria-expanded="false"]').forEach(function (btn) {
      try { btn.click(); } catch(e) {}
    });
 
    // 2) Sicherheitsgurt: typische Inhalts-Container sichtbar erzwingen
    document.querySelectorAll('.collapsible-block, .mf-section-contents, .section-content').forEach(function (el) {
      el.style.display = 'block';
      el.hidden = false;
      el.classList.add('open-block');
      el.classList.remove('collapsed');
    });
  }


  // Beim Rendern und bei dynamischen Änderungen erneut ausführen
  function init() {
    expandAll();
    // Nochmal kurz nach Seitenaufbau und nach spätem JS
    setTimeout(expandAll, 50);
    setTimeout(expandAll, 400);
  }


(function () {
  if (mw.loader && mw.loader.using) {
  if (mw.config.get('skin') !== 'minerva') return;
    mw.loader.using(['mobile.init']).always(function () {
  var b = document.createElement('div');
      if (mw.hook) mw.hook('wikipage.content').add(init);
  b.id = 'mobilejs-banner';
      init();
   b.textContent = 'Mobile.js ist aktiv';
    });
  b.style.cssText = 'position:fixed;top:0;left:0;right:0;z-index:9999;padding:10px;text-align:center;background:#0b5;color:#fff;font-weight:700;';
   } else {
  document.addEventListener('DOMContentLoaded', function () {
    document.addEventListener('DOMContentLoaded', init);
    document.body.appendChild(b);
   }
    setTimeout(function(){ b.remove(); }, 4000);
   });
})();
})();