Tip of the Day
Make sure you equip your items to get their effects, most don't work from inventory alone.

MediaWiki:Gadget-TranslatedTabTitle.js: Difference between revisions

From Walkscape Walkthrough
Created page with "* * Gadget: TranslatedTabTitle * Updates the browser tab title to match the translated page title.: (function () { var SITE_SUFFIX = ' – Walkscape Walkthrough'; function computeTitle() { var $h = $('#firstHeading, .firstHeading, .mw-first-heading, .mw-page-title-main').first(); var t = $h.text().trim(); if (!t) return; // Optional: show language tag if on /lang subpage var m = mw.config.get('wgPageName').match(/\/([a-z0-9\-]+)$/i);..."
 
mNo edit summary
Line 4: Line 4:
  */
  */
(function () {
(function () {
   var SITE_SUFFIX = ' – Walkscape Walkthrough';
   var SITE_SUFFIX = ' – TEST';


   function computeTitle() {
   function computeTitle() {

Revision as of 02:45, 8 November 2025

/**
 * Gadget: TranslatedTabTitle
 * Updates the browser tab title to match the translated page title.
 */
(function () {
  var SITE_SUFFIX = ' – TEST';

  function computeTitle() {
    var $h = $('#firstHeading, .firstHeading, .mw-first-heading, .mw-page-title-main').first();
    var t = $h.text().trim();
    if (!t) return;

    // Optional: show language tag if on /lang subpage
    var m = mw.config.get('wgPageName').match(/\/([a-z0-9\-]+)$/i);
    var langTag = m ? ' [' + m[1] + ']' : '';

    var current = document.title;
    var base = t + langTag;
    if (!current.startsWith(base)) {
      document.title = base + SITE_SUFFIX;
    } else if (!current.endsWith(SITE_SUFFIX)) {
      document.title = current + SITE_SUFFIX;
    }
  }

  // Run when the page is ready
  $(computeTitle);
  mw.hook('wikipage.content').add(computeTitle);

  // Watch for changes to the heading text
  var h = document.getElementById('firstHeading');
  if (h && window.MutationObserver) {
    new MutationObserver(function () { computeTitle(); })
      .observe(h, { childList: true, characterData: true, subtree: true });
  }
})();