MediaWiki:Mobile.js

Revision as of 11:58, 16 March 2025 by Minionguyjpro (talk | contribs)

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.
/* All JavaScript here will be loaded for users of the mobile site */
/* Add to MediaWiki:Mobile.js for custom Mobile Menu links 
for MW-1.34.2 with MobileFrontend and MinervaNeue 
Just replace span text and href to add links */

var timer = setInterval(function() {
   if ($('.menu ul:first').length) {
       console.log("Mobile menu exists");
       clearInterval(timer);
       $('.menu ul:first').after(
             '<ul class="level1"> \
                  <li> \
                  <a href="#" \
                        class="mw-ui-icon mw-ui-icon-before mw-ui-icon-minerva-watchlist"> \
                  <span>Creative</span> \
                  </a> \
                  </li> \
                  <ul class ="level2"> \
                       <li> \
                       <a href="/wiki/List_of_Cities_and_Islands" \
                             class="mw-ui-icon mw-ui-icon-before"> \
                       <span>List of cities and islands</span> \
                       </a> \
                       </li> \
                       <li> \
                       <a href="/wiki/List_of_Notable_Players" \
                             class="mw-ui-icon mw-ui-icon-before"> \
                       <span>List of notable players</span> \
                       </a> \
                       </li> \
                  </ul> \
             </ul> \
             <ul> \
                  <li> \
	              <a href="/wiki/Second_Link" \
                        class="mw-ui-icon mw-ui-icon-before mw-ui-icon-minerva-watchlist"> \
                  <span>Second Link</span> \
                  </a> \
                  </li> \
             </ul>'
        );
        $(".menu").find(".level2").hide(); // hide level2 until level1 is clicked
        $(".level1").click(function(event){ 
             $(this).find(".level2").slideToggle(500);
        }); // if level1 is clicked, dropdown level2
   }
}, 100); // check every 100ms