Note: After saving, you have to bypass your browser's cache to see the changes. Google Chrome, Firefox, Microsoft Edge and Safari: Hold down the ⇧ Shift key and click the Reload toolbar button. For details and instructions about other browsers, see Wikipedia:Bypass your cache.
// Forked from [[User:Danski454/goToTop.js]]
//-----------------------------------------------------
$(function() {
    'use strict';

    if (!mw.config.get('wgAction').includes('edit')) {
       $('body').append('<span id="mx-to-top" class="noprint">↑</span>');
        var $topButton = $('#mx-to-top');

       $topButton.css({
            'padding': '10px 20px',
            'color': 'var(--color-base)',
            'position': 'fixed',
            'top': '50%',
            'right': '4px',
            'cursor': 'pointer',
            'transform': 
'translateY(-50%)',
            'z-index': '100',
            'font-size': '25px',
            'border-radius': '50%',
            'transition': 'bottom 0.5s',
            'background-color': '#00f',
            '-webkit-transition': 'bottom 0.5s',
            'user-select': 'none',
            '-webkit-user-select': 'none',
            '-moz-user-select': 'none',
            '-ms-user-select': 'none',
      }).click(function() {
           $('html, body').animate({
                scrollTop: 0
          }, 'slow');
        });

       $(window).scroll(function() {
           var appearAt;
            switch (mw.config.get("skin")) {
               case 'minerva':
                   appearAt = 100;
                    break;
               case 'vector-2022':
                   if (document.getElementById('vector-toc-pinned-container'))
                       appearAt = $('#mw-panel-toc').position().top + $('#vector-toc-pinned-container').outerHeight(true) - $(window).height() + 20;
                   else
                       appearAt = $('#vector-main-menu').position().top + $('#vector-main-menu').outerHeight(true) - $(window).height() + 20;
                    break;
                default:
                   appearAt = $('#p-tb').parent().position().top + $('#p-tb').parent().outerHeight(true) - $(window).height() + 20;
               }
                if (appearAt < 100) {
                   appearAt = 100;
               }
               if ($(window).scrollTop() > appearAt) {
                   $topButton.css('right', '4px');
              }
           });
       } else {
             return "";
       }
 });