MediaWiki:Timeless.js
From Ephinea PSO Wiki
Note: After publishing, you may have to bypass your browser's cache to see the changes.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
- Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
- Opera: Press Ctrl-F5.
/* Any JavaScript here will be loaded for all users on every page load. */ /* Sets the top property for stickyHeader tables */ function setStickyHeaderTop() { const stickyTables = document.getElementsByClassName('stickyHeader'); const headHeight = document.getElementById('mw-header-container').offsetHeight; for (var i = 0; i < stickyTables.length; i++) { const firstRow = stickyTables[i].getElementsByClassName('headerRow-0'); const secondRow = stickyTables[i].getElementsByClassName('headerRow-1'); var firstHeight = 0; if (firstRow.length > 0) { firstHeight = firstRow[0].offsetHeight; const firstHeaders = firstRow[0].getElementsByTagName('th'); for (var j = 0; j < firstHeaders.length; j++) { firstHeaders[j].style.top = headHeight + 'px'; } if (secondRow.length > 0) { const secondHeaders = secondRow[0].getElementsByTagName('th'); var secondHeight = headHeight + firstHeight; for (var j = 0; j < secondHeaders.length; j++) { secondHeaders[j].style.top = secondHeight + 'px'; } } } } } $(document).ready(function () { if (document.getElementsByClassName("stickyHeader").length > 0) { setStickyHeaderTop(); $(window).resize(setStickyHeaderTop); } const darkMode = localStorage.getItem("darkMode"); if (darkMode === "true") { document.body.classList.add("darkMode"); } else { document.body.classList.remove("darkMode"); } $("#personal-inner").append('<button onClick="toggleDarkMode();" style="margin:.5rem!important;">Toggle Dark Mode</button>'); }); function toggleDarkMode() { const darkMode = localStorage.getItem("darkMode"); if (darkMode !== "true") { localStorage.setItem("darkMode", true); document.body.classList.add("darkMode"); } else { localStorage.setItem("darkMode", false); document.body.classList.remove("darkMode"); } }