Материал из UOGames/UOGuide - Энциклопедия Ultima Online на русском
/**
* Code for collapsible tables.
*/
function CollapseButton(table, header) {
var spacer = document.createElement('div');
spacer.style.cssFloat = 'left';
spacer.style.styleFloat = 'left';
spacer.style.textAlign = 'left';
spacer.style.width = '35px';
spacer.appendChild(document.createTextNode('\u00a0'));
header.insertBefore(spacer, header.childNodes[0]);
var button = document.createElement('div');
button.style.cssFloat = 'right';
button.style.styleFloat = 'right';
button.style.fontSize = '11px';
button.style.fontWeight = 'normal';
button.style.textAlign = 'right';
button.style.width = '35px';
button.onclick = function() {
if (this.firstChild.data == '[hide]') {
for (var i = 1; i < table.rows.length; i++) {
table.rows[i].style.display = 'none';
}
this.firstChild.data = '[show]';
} else {
for (var i = 1; i < table.rows.length; i++) {
table.rows[i].style.display = table.rows[0].style.display;
}
this.firstChild.data = '[hide]';
}
};
button.onmouseover = function() {
this.style.cursor = 'pointer';
};
button.appendChild(document.createTextNode('[hide]'));
header.insertBefore(button, header.childNodes[0]);
}
function createCollapseButtons() {
var tables = getElementsByClassName(document, 'table', 'collapsible');
for (var i = 0; i < tables.length; i++) {
var headerRow = tables[i].getElementsByTagName('tr')[0];
if (headerRow) {
var header = headerRow.getElementsByTagName('th')[0];
if (header) {
CollapseButton(tables[i], header);
}
}
}
}
addOnloadHook(createCollapseButtons);