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)
  • Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5.
/* Any JavaScript here will be loaded for all users on every page load. */


/**
 * Prevent Leaflet maps from auto-scrolling page on load
 * by removing focusability from the map container
 */
(function() {
    'use strict';
    
    function disableMapFocus() {
        var maps = document.querySelectorAll('.maps-leaflet');
        maps.forEach(function(map) {
            map.removeAttribute('tabindex');
        });
    }
    
    // Run immediately and again after a delay (maps initialize asynchronously)
    disableMapFocus();
    setTimeout(disableMapFocus, 500);
})();


// Log whatever ends up focused (and where it is) during/after load
window.addEventListener("focusin", (e) => {
  const el = e.target;
  console.log("[focusin]", el, "id=", el.id, "class=", el.className);
  console.log("  activeElement:", document.activeElement);
  console.log("  scrollY:", window.scrollY);
}, true);

// Also catch programmatic focus calls (helpful if some code calls .focus())
(() => {
  const orig = HTMLElement.prototype.focus;
  HTMLElement.prototype.focus = function (...args) {
    console.log("[focus() called on]", this, "id=", this.id, "class=", this.className);
    return orig.apply(this, args);
  };
})();
MediaWiki Appliance - Powered by TurnKey Linux