MediaWiki:Common.js
From Future Of Mankind
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)
- Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
- Opera: Press Ctrl-F5.
/* Any JavaScript here will be loaded for all users on every page load. */ //collapsible table column test, based on: https://codepen.io/feger/pen/eDybC $(".btnHideEnglish").click(function() { console.log('Hiding first column of table with an id of report'); $("table#collapsible_report > tbody:last-child > tr > th:first-child, table#collapsible_report > tbody:last-child > tr > td:first-child").toggle(); $(this).text($(this).text() == "Hide English" ? "Show English" : "Hide English"); $("table#collapsible_report").css({ "width": $(this).text() == "Show English" ? "80%" : "100%" }); }); $(".btnHideHigh-German").click(function() { console.log('Hiding first column of table with an id of report'); $("table#collapsible_report > tbody:last-child > tr > th:last-child, table#collapsible_report > tbody:last-child > tr > td:last-child").toggle(); $(this).text($(this).text() == "Hide High German" ? "Show High German" : "Hide High German"); $("table#collapsible_report").css({ "width": $(this).text() == "Show High German" ? "80%" : "100%" }); }); $(".btnHideGerman").click(function() { console.log('Hiding first column of table with an id of report'); $("table#collapsible_report > tbody:last-child > tr > th:last-child, table#collapsible_report > tbody:last-child > tr > td:last-child").toggle(); $(this).text($(this).text() == "Hide German" ? "Show German" : "Hide German"); $("table#collapsible_report").css({ "width": $(this).text() == "Show German" ? "80%" : "100%" }); }); // hide the german by default, on page load, but only if the btnHideGerman element exists on the page if (document.getElementById("btnHideGerman")) { console.log('btnHideGerman exists'); //$("#btnHideGerman").click(); } else { // do stuff console.log('btnHideGerman does not exist'); } $(document).ready(function() { $('.WD-Ausartung').hover(function() { // Set the tooltip content from the data attribute var tooltipContent = 'Explanation of the Plejaren language scientists, given to Billy on the 27th of August 2010: Ausartung means a very bad get-out of the control of the good human nature.'; $(this).attr('data-tooltip', tooltipContent); // Create a tooltip element var $tooltip = $(' ').text(tooltipContent).appendTo('body'); // Position the tooltip var offset = $(this).offset(); var tooltipWidth = $tooltip.outerWidth(); var tooltipHeight = $tooltip.outerHeight(); // Calculate the position var top = offset.top - tooltipHeight - 10; // 10px above the element var left = offset.left + ($(this).outerWidth() / 2) - (tooltipWidth / 2); // Centered above the element // Adjust if the tooltip goes off-screen if (top < 0) { top = offset.top + $(this).outerHeight() + 10; // Position below the element if it goes off-screen } if (left < 0) { left = 10; // Keep it within the left boundary } else if (left + tooltipWidth > $(window).width()) { left = $(window).width() - tooltipWidth - 10; // Keep it within the right boundary } // Set the position of the tooltip $tooltip.css({ top: top, left: left, position: 'absolute', zIndex: 1000, background: '#fff', border: '1px solid #ccc', padding: '5px', 'border-radius': '4px', 'box-shadow': '0 2px 5px rgba(0,0,0,0.2)' }); // Show the tooltip $tooltip.fadeIn(200); // Store the tooltip element for later use $(this).data('tooltipElement', $tooltip); }, function() { // Clear the tooltip content and remove the tooltip element $(this).attr('data-tooltip', ''); var $tooltip = $(this).data('tooltipElement'); if ($tooltip) { $tooltip.fadeOut(200, function() { $(this).remove(); // Remove the tooltip from the DOM }); } }); });