MediaWiki:Common.js: Difference between revisions
From DM Live - the Depeche Mode live encyclopedia for the masses
Jump to navigationJump to search
(Replaced content with "→<pre>: →Any JavaScript here will be loaded for all users on every page load.: ") Tag: Replaced |
No edit summary |
||
Line 1: | Line 1: | ||
/* <pre> */ | /* <pre> */ | ||
/* Any JavaScript here will be loaded for all users on every page load. */ | /* Any JavaScript here will be loaded for all users on every page load. */ | ||
function UpdateTableHeaders() { | |||
$("div.divTableWithFloatingHeader").each(function() { | |||
offset = $(this).offset(); | |||
scrollTop = $(window).scrollTop(); | |||
if ((scrollTop > offset.top) && (scrollTop < offset.top + $(this).height())) { | |||
$(".tableFloatingHeader", this).css("visibility", "visible"); | |||
$(".tableFloatingHeader", this).css("top", Math.min(scrollTop - offset.top, $(this).height() - $(".tableFloatingHeader", this).height()) + "px"); | |||
} | |||
else { | |||
$(".tableFloatingHeader", this).css("visibility", "hidden"); | |||
$(".tableFloatingHeader", this).css("top", "0px"); | |||
} | |||
}) | |||
} | |||
$(document).ready(function() { | |||
$("table.tableWithFloatingHeader").each(function() { | |||
$(this).wrap("<div class="divTableWithFloatingHeader" style="position:relative"></div>"); | |||
$("tr:first", this).before($("tr:first", this).clone()); | |||
clonedHeaderRow = $("tr:first", this) | |||
clonedHeaderRow.addClass("tableFloatingHeader"); | |||
clonedHeaderRow.css("position", "absolute"); | |||
clonedHeaderRow.css("top", "0px"); | |||
clonedHeaderRow.css("left", "0px"); | |||
clonedHeaderRow.css("visibility", "hidden"); | |||
}); | |||
UpdateTableHeaders(); | |||
$(window).scroll(UpdateTableHeaders); | |||
}); |
Revision as of 06:46, 17 August 2019
/* <pre> */ /* Any JavaScript here will be loaded for all users on every page load. */ function UpdateTableHeaders() { $("div.divTableWithFloatingHeader").each(function() { offset = $(this).offset(); scrollTop = $(window).scrollTop(); if ((scrollTop > offset.top) && (scrollTop < offset.top + $(this).height())) { $(".tableFloatingHeader", this).css("visibility", "visible"); $(".tableFloatingHeader", this).css("top", Math.min(scrollTop - offset.top, $(this).height() - $(".tableFloatingHeader", this).height()) + "px"); } else { $(".tableFloatingHeader", this).css("visibility", "hidden"); $(".tableFloatingHeader", this).css("top", "0px"); } }) } $(document).ready(function() { $("table.tableWithFloatingHeader").each(function() { $(this).wrap("<div class="divTableWithFloatingHeader" style="position:relative"></div>"); $("tr:first", this).before($("tr:first", this).clone()); clonedHeaderRow = $("tr:first", this) clonedHeaderRow.addClass("tableFloatingHeader"); clonedHeaderRow.css("position", "absolute"); clonedHeaderRow.css("top", "0px"); clonedHeaderRow.css("left", "0px"); clonedHeaderRow.css("visibility", "hidden"); }); UpdateTableHeaders(); $(window).scroll(UpdateTableHeaders); });