User:JamesA/CollapsibleTemplates.js
Jump to navigation
Jump to search
Note: After publishing, you may have to bypass your browser's cache to see the changes.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
- Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
- Opera: Press Ctrl-F5.
$(document).ready(function() {
importStylesheet('MediaWiki:CollapsibleTemplates.css');
var slideDuration = (skin == 'vector') ? 150 : 0;
$('div.collapsibleheader').show();
$('div.collapsibletemplate.collapsed div.body').hide();
$('table.collapsible.collapsed > tbody > tr:not(:first-child)').toggleClass('hidden');
$('div.collapsibletemplate div.body').removeClass('show-on-commons');
function toggleTemplate($element) {
if ($element.is('tr')) {
$element
.parent().parent()
.toggleClass('collapsed');
$element.nextAll('tr')
.toggleClass('hidden');
} else {
$element
.parent()
.toggleClass('expanded')
.toggleClass('collapsed')
.find('div.body')
.slideToggle(slideDuration);
}
}
var $headings = $('div.collapsibletemplate > div.collapsibleheader, table.collapsible > tbody >tr:first-child');
$headings.mousedown(function(e) {
if ($(e.target).is('a')) {
return true;
} else {
toggleTemplate($(this));
return false;
}
});
});