Difference between revisions of "MediaWiki:Common.js"

From Software Inc.
Jump to navigation Jump to search
(Created page with "→‎Any JavaScript here will be loaded for all users on every page load.: mw.loader.load("https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/highlight.min.js"); mw.lo...")
 
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
/* Any JavaScript here will be loaded for all users on every page load. */
+
mw.loader.load(
mw.loader.load("https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/highlight.min.js");
+
  "https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/highlight.min.js"
mw.loader.load("https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/styles/default.min.css", "text/css");
+
);
 +
mw.loader.load(
 +
  "https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/styles/default.min.css",
 +
  "text/css"
 +
);
  
$(document).ready(function () {
+
mw.loader.using([], function () {
  document.querySelectorAll('pre code').forEach((el) => {
+
  // Wait until highlight.js is actually available
    hljs.highlightElement(el);
+
  function initHighlight() {
   });
+
    if (typeof hljs !== "undefined") {
 +
      hljs.configure({
 +
        cssSelector: 'pre[class*="language-"]'
 +
      });
 +
      hljs.highlightAll();
 +
    } else {
 +
      // try again shortly
 +
      setTimeout(initHighlight, 50);
 +
    }
 +
   }
 +
 
 +
  initHighlight();
 
});
 
});

Latest revision as of 22:53, 25 March 2026

mw.loader.load(
  "https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/highlight.min.js"
);
mw.loader.load(
  "https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/styles/default.min.css",
  "text/css"
);

mw.loader.using([], function () {
  // Wait until highlight.js is actually available
  function initHighlight() {
    if (typeof hljs !== "undefined") {
      hljs.configure({
        cssSelector: 'pre[class*="language-"]'
      });
      hljs.highlightAll();
    } else {
      // try again shortly
      setTimeout(initHighlight, 50);
    }
  }

  initHighlight();
});