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 )"});
	}
});