MediaWiki:Common.js
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. */ /* Custom collapsibles for hints (cannot be nested): */ var coll = document.getElementsByClassName("collapsible-hint"); var i; for (i = 0; i < coll.length; i++) { coll[i].addEventListener("click", function() { this.classList.toggle("active"); var content = this.nextElementSibling; if (content.style.maxHeight){ content.style.maxHeight = null; content.classList.remove("collapsible-hint-content-visible"); } else { content.style.maxHeight = content.scrollHeight + "px"; content.classList.add("collapsible-hint-content-visible"); } }); } /* Custom collapsibles for social media threads */ $(document).ready(function() { $('.collapsible-dialogue-link').on('click', function() { //alert("Click!"); $parentElem = $(this).closest('.collapsible-dialogue'); if ($(this).text() == 'Collapse') { // hide $(this).text('Choose'); $parentElem.children('.collapsible-dialogue-content').slideUp(200); } else { // show $(this).text('Collapse'); $parentElem.children('.collapsible-dialogue-content').slideDown(200); $parentElem.siblings('.collapsible-dialogue').find('.collapsible-dialogue-content').slideUp(200); $parentElem.siblings('.collapsible-dialogue').find('.collapsible-dialogue-link').text('Choose'); } }); }); /* Custom hex strings */ var hss = document.getElementsByClassName("hex-string"); var i; for (i = 0; i < hss.length; i++) { hss[i].addEventListener("click", function() { if (this.dataset.state === 'hex') { // Switch to English this.querySelector('.hex-string-content').innerText = this.dataset.text; this.dataset.state = 'text'; } else { // Switch to Hex this.querySelector('.hex-string-content').innerText = this.dataset.hex; this.dataset.state = 'hex'; } }); }