Difference between revisions of "MediaWiki:Common.js"
From AYSO Wiki
Line 12: | Line 12: | ||
$(function() { | $(function() { | ||
+ | $('#toc ul').addClass('ayso-toc').detach().appendTo('#ayso-sidebar'); | ||
$('#ayso-footer .ayso-footer-menu.social a.fas, #ayso-footer .ayso-footer-menu.social a.far, #ayso-footer .ayso-footer-menu.social a.fab').show().addClass('d-flex'); | $('#ayso-footer .ayso-footer-menu.social a.fas, #ayso-footer .ayso-footer-menu.social a.far, #ayso-footer .ayso-footer-menu.social a.fab').show().addClass('d-flex'); | ||
}); | }); | ||
Line 21: | Line 22: | ||
resizeId = setTimeout(doneResizing, 500); | resizeId = setTimeout(doneResizing, 500); | ||
}); | }); | ||
− | |||
function doneResizing(){ | function doneResizing(){ | ||
$( "#ayso-banner" ).load(window.location.href + " #ayso-slides" ); | $( "#ayso-banner" ).load(window.location.href + " #ayso-slides" ); | ||
} | } | ||
+ | |||
+ | $.fn.isInViewport = function() { | ||
+ | var elementTop = $(this).offset().top; | ||
+ | var elementBottom = elementTop + $(this).outerHeight(); | ||
+ | |||
+ | var viewportTop = $(window).scrollTop(); | ||
+ | var viewportBottom = viewportTop + $(window).height(); | ||
+ | |||
+ | return elementBottom > viewportTop && elementTop < viewportBottom; | ||
+ | }; | ||
+ | |||
+ | $(window).on('resize scroll', function() { | ||
+ | if ($('#ayso-footer').isInViewport()) { | ||
+ | $('#ayso-sidebar').css({"height": "calc(100% - 54px - 210px )"}); | ||
+ | } else { | ||
+ | $('#ayso-sidebar').css({"height": "calc(100% - 54px )"}); | ||
+ | } | ||
+ | }); |
Revision as of 22:41, 10 May 2022
/* Any JavaScript here will be loaded for all users on every page load. */
$('#ayso-banner').insertBefore('#ayso-subcontent');
$('#ayso-subcontent-wrapper').prepend($('#subcontent'));
$('#ayso-footer .ayso-footer-menu.social a.fas, #ayso-footer .ayso-footer-menu.social a.far, #ayso-footer .ayso-footer-menu.social a.fab').empty();
$('#menu-toggle').click(function(){
$('#ayso-footer').toggleClass('position-fixed');
});
$(function() {
$('#toc ul').addClass('ayso-toc').detach().appendTo('#ayso-sidebar');
$('#ayso-footer .ayso-footer-menu.social a.fas, #ayso-footer .ayso-footer-menu.social a.far, #ayso-footer .ayso-footer-menu.social a.fab').show().addClass('d-flex');
});
var resizeId;
$(window).resize(function() {
clearTimeout(resizeId);
resizeId = setTimeout(doneResizing, 500);
});
function doneResizing(){
$( "#ayso-banner" ).load(window.location.href + " #ayso-slides" );
}
$.fn.isInViewport = function() {
var elementTop = $(this).offset().top;
var elementBottom = elementTop + $(this).outerHeight();
var viewportTop = $(window).scrollTop();
var viewportBottom = viewportTop + $(window).height();
return elementBottom > viewportTop && elementTop < viewportBottom;
};
$(window).on('resize scroll', function() {
if ($('#ayso-footer').isInViewport()) {
$('#ayso-sidebar').css({"height": "calc(100% - 54px - 210px )"});
} else {
$('#ayso-sidebar').css({"height": "calc(100% - 54px )"});
}
});