MediaWiki:SupportPage.js: Difference between revisions

Content deleted Content added
new language switcher code
check for languageSwitcherBackdrop
 
(7 intermediate revisions by the same user not shown)
Line 5:
 
$(function() {
 
/* -- language bar code -- */
function showHideLanguageExpand() {
if ( $('.sp-languages ul').height() > $('.sp-languages').height() ) {
$('.sp-languages-expand').show();
} else if ( !$('.sp-languages').hasClass('-expanded') ) {
$('.sp-languages-expand').hide();
}
}
 
showHideLanguageExpand();
$( window ).resize( showHideLanguageExpand );
/* -- end of language bar code -- */
/* -- New language switcher code -- */
var languageSwitcherButton = document.querySelector('.language-switcher__button'),
languageSwitcherContentlanguageSwitcher = document.querySelector('.language-switcher__content'),
languageSwitcherBackdrop = document.querySelector('[data-.dropdown-backdrop]');
 
languageSwitcherButton.onclick =addEventListener('click', function() {
if ( languageSwitcherButton.ariaExpanded === 'true' ) {
hideLanguageSwitcher();
} else {
showLanguageSwitcher();
checkScroll();
}
});
 
if ( languageSwitcherBackdrop.onclick =) hideLanguageSwitcher;{
languageSwitcherBackdrop.addEventListener('click', hideLanguageSwitcher);
}
 
function showLanguageSwitcher() {
languageSwitcherButton.ariaExpanded = 'true';
languageSwitcherContentlanguageSwitcher.hidden = false;
languageSwitcherBackdropdocument.body.dataset.dropdownBackdropdropdownOpen = 'activetrue';
}
 
function hideLanguageSwitcher() {
languageSwitcherButton.ariaExpanded = 'false';
languageSwitcherContentlanguageSwitcher.hidden = true;
languageSwitcherBackdropdocument.body.dataset.dropdownBackdropdropdownOpen = 'inactivefalse';
}
 
function showHideLanguageExpandcheckScroll() {
if ( languageSwitcher.offsetHeight + languageSwitcher.scrollTop >= languageSwitcher.scrollHeight ) {
languageSwitcher.classList.remove('scroll-shadow');
} else {
languageSwitcher.classList.add('scroll-shadow');
}
}
 
languageSwitcher.addEventListener('scroll', checkScroll);
/* -- End of new language switcher code -- */
 
/* -- table of contents code -- */
// Build a list of corresponding tocfragment links and anchors
var toc = [];
$('.sp-page [href^="#toc > ul a"]').each( function() {
var id = $(this).attr('href').replace('#', '');
toc.push({