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. */

if (mw.config.get('skin') == 'timeless') {
    $('#catlinks-sidebar').find(".mw-portlet-body").find("ul").wrap('<details class=\'catlinks-details\'></details>')
        .closest('details')
        .prepend('<summary class=\'catlinks-details-summary\'>Show full category list</summary>');

    $('#mw-normal-catlinks').find("ul").wrap('<details class=\'catlinks-details\'></details>')
        .closest('details')
        .prepend('<summary class=\'catlinks-details-summary\'>Show full category list</summary>');

    $('#catlinks').children().not('#mw-normal-catlinks').hide();
}

/* Adding functionality for unblurring spoilers by clicking on them*/
function unblurSpoilerOnClick() {
  var mousedOverBlur = document.querySelector(':hover.spoilerblur');
  if (mousedOverBlur) {
    mousedOverBlur.classList.remove("spoilerblur");
  }
}
document.body.addEventListener('click', unblurSpoilerOnClick, true);

/* Adding functionality for generalised spoilers */
function toggleSpoiler () {
  this.classList.toggle('spoiled');
}

var spoilers = document.getElementsByClassName('spoiler-inline');
for (var i = 0; i < spoilers.length; i++) {
  spoilers[i].addEventListener('click', toggleSpoiler, false);
}