More actions
No edit summary |
No edit summary Tag: Reverted |
||
| Line 20: | Line 20: | ||
} | } | ||
}); | }); | ||
} | |||
}); | |||
// Auto-expand collapsed section if URL has anchor | |||
mw.hook('wikipage.content').add(function() { | |||
if (window.innerWidth >= 768) { | |||
const hash = window.location.hash; | |||
if (!hash) return; | |||
const header = document.getElementById(hash.substring(1)); // Remove # | |||
if (!header) return; | |||
const sectionHeading = header.closest('.citizen-section-heading'); | |||
const content = sectionHeading?.nextElementSibling; | |||
if (content && content.hidden) { | |||
content.hidden = false; // ✅ Unhide it | |||
} | |||
// Optional: scroll into view again after expanding | |||
setTimeout(() => { | |||
header.scrollIntoView({ behavior: 'smooth', block: 'start' }); | |||
}, 50); | |||
} | } | ||
}); | }); | ||
Revision as of 14:49, 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
}
});
}
});
// Auto-expand collapsed section if URL has anchor
mw.hook('wikipage.content').add(function() {
if (window.innerWidth >= 768) {
const hash = window.location.hash;
if (!hash) return;
const header = document.getElementById(hash.substring(1)); // Remove #
if (!header) return;
const sectionHeading = header.closest('.citizen-section-heading');
const content = sectionHeading?.nextElementSibling;
if (content && content.hidden) {
content.hidden = false; // ✅ Unhide it
}
// Optional: scroll into view again after expanding
setTimeout(() => {
header.scrollIntoView({ behavior: 'smooth', block: 'start' });
}, 50);
}
});