More actions
No edit summary Tag: Reverted |
No edit summary Tag: Reverted |
||
Line 23: | Line 23: | ||
}); | }); | ||
function expandTargetedSectionById(id) { | function expandTargetedSectionById(id) { | ||
const header = document.getElementById(id); | const header = document.getElementById(id); | ||
Line 35: | Line 34: | ||
} | } | ||
setTimeout(() => { | setTimeout(() => { | ||
header.scrollIntoView({ behavior: 'smooth', block: 'start' }); | header.scrollIntoView({ behavior: 'smooth', block: 'start' }); | ||
Line 41: | Line 39: | ||
} | } | ||
// | // Expand if URL has a hash on page load | ||
mw.hook('wikipage.content').add(function() { | mw.hook('wikipage.content').add(function() { | ||
if (window.innerWidth >= 768) { | if (window.innerWidth >= 768) { | ||
Line 51: | Line 49: | ||
}); | }); | ||
// | // Expand on hashchange (TOC click or manual URL change) | ||
window.addEventListener('hashchange', function() { | |||
if (window.innerWidth | if (window.innerWidth >= 768) { | ||
const hash = window.location.hash; | |||
if (hash && hash.length > 1) { | |||
expandTargetedSectionById(hash.substring(1)); | |||
} | |||
} | |||
} | |||
}); | }); |
Revision as of 14:53, 25 April 2025
/* All JavaScript here will be loaded for users of the Citizen skin */ mw.hook('wikipage.content').add(function($content) { if (window.innerWidth >= 768) { // Desktop only const idsToCollapse = [ 'Muling', 'Misc', 'Anti-ban', 'Anti-PK', 'Trip_Settings', 'Skills_Settings', 'Equipment' ]; idsToCollapse.forEach(function(rawId) { var id = rawId.replace(/ /g, "_"); var heading = document.getElementById(id); if (!heading) return; var sectionHeading = heading.closest('.citizen-section-heading'); var content = sectionHeading?.nextElementSibling; if (content && content.classList.contains('citizen-section')) { content.hidden = 'until-found'; // ✅ collapse it using Citizen’s native system } }); } }); function expandTargetedSectionById(id) { const header = document.getElementById(id); if (!header) return; const sectionHeading = header.closest('.citizen-section-heading'); const content = sectionHeading?.nextElementSibling; if (content && content.hidden) { content.hidden = false; // Expand collapsed section } setTimeout(() => { header.scrollIntoView({ behavior: 'smooth', block: 'start' }); }, 50); } // Expand if URL has a hash on page load mw.hook('wikipage.content').add(function() { if (window.innerWidth >= 768) { const hash = window.location.hash; if (hash && hash.length > 1) { expandTargetedSectionById(hash.substring(1)); } } }); // Expand on hashchange (TOC click or manual URL change) window.addEventListener('hashchange', function() { if (window.innerWidth >= 768) { const hash = window.location.hash; if (hash && hash.length > 1) { expandTargetedSectionById(hash.substring(1)); } } });