User:Canadabonk/common.js: Difference between revisions
Content deleted Content added
Canadabonk (talk | contribs) No edit summary |
Canadabonk (talk | contribs) No edit summary |
||
Line 26: | Line 26: | ||
stickytoc.fadeOut(200); |
stickytoc.fadeOut(200); |
||
}); |
}); |
||
/* |
|||
window.onclick = function(event) { |
window.onclick = function(event) { |
||
if (!event.target.matches('ct-stickytoc').children && !stickytoc.attr('style')) { |
if (!event.target.matches('ct-stickytoc').children && !stickytoc.attr('style')) { |
||
stickytoc.fadeOut(200); |
|||
} |
|||
}; |
|||
*/ |
|||
window.onclick = function(event) { |
|||
if (!$('ct-toc').find('*').includes(event.target) && !stickytoc.attr('style')) { |
|||
stickytoc.fadeOut(200); |
stickytoc.fadeOut(200); |
||
} |
} |
Revision as of 07:44, 6 June 2024
$(document).ready(function(){
if ($(window).width() > 850 && $('#toc').get(0) && $('body.skin-cosmos').get(0)) {
$('#mw-content').prepend('<div class="ct-sidetools-wrapper"><div class="ct-sidetools"></div></div>');
const tocbuttonhtml = '<div class="ct-toc"><span class="ct-sidetools-button"></span></div>';
$('.ct-sidetools').append(tocbuttonhtml);
const tocbutton = $('.ct-toc').find('.ct-sidetools-button');
const faListUl = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--!Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M64 144a48 48 0 1 0 0-96 48 48 0 1 0 0 96zM192 64c-17.7 0-32 14.3-32 32s14.3 32 32 32H480c17.7 0 32-14.3 32-32s-14.3-32-32-32H192zm0 160c-17.7 0-32 14.3-32 32s14.3 32 32 32H480c17.7 0 32-14.3 32-32s-14.3-32-32-32H192zm0 160c-17.7 0-32 14.3-32 32s14.3 32 32 32H480c17.7 0 32-14.3 32-32s-14.3-32-32-32H192zM64 464a48 48 0 1 0 0-96 48 48 0 1 0 0 96zm48-208a48 48 0 1 0 -96 0 48 48 0 1 0 96 0z"/></svg>';
tocbutton.append(faListUl);
$('#toc').find('ul').first().clone().appendTo('.ct-toc');
$('.ct-toc').find('ul').first().wrap('<div class="ct-stickytoc"></div>');
const stickytoc = $('.ct-stickytoc');
stickytoc.prepend('<div>Contents</div>');
stickytoc.hide();
tocbutton.click(function() {
stickytoc.fadeToggle(200);
});
stickytoc.find('a').click(function(){
stickytoc.fadeOut(200);
});
/*
window.onclick = function(event) {
if (!event.target.matches('ct-stickytoc').children && !stickytoc.attr('style')) {
stickytoc.fadeOut(200);
}
};
*/
window.onclick = function(event) {
if (!$('ct-toc').find('*').includes(event.target) && !stickytoc.attr('style')) {
stickytoc.fadeOut(200);
}
};
}
});