MediaWiki:Common.js: различия между версиями
Перейти к навигации
Перейти к поиску
GW349581 (обсуждение | вклад) мНет описания правки |
Нет описания правки |
||
| (не показаны 3 промежуточные версии 2 участников) | |||
| Строка 1: | Строка 1: | ||
/* Размещённый здесь код JavaScript будет загружаться пользователям при обращении к каждой странице */ | /* Размещённый здесь код JavaScript будет загружаться пользователям при обращении к каждой странице */ | ||
if | if (document.getElementsByClassName('nomobile').length==0 && document.getElementsByClassName('spcss').length>0) { | ||
document.querySelector('.spcss').style.display = 'block'; | document.querySelector('.spcss').style.display = 'block'; | ||
} | |||
if(document.querySelector('table.dpl.long')) { | |||
var tables = document.querySelectorAll('table.dpl.long'); | |||
tables.forEach(function(table) { | |||
var rows = table.querySelectorAll('tr'); | |||
var maxRows = 6; //максимальное количество строк (заголовок не в счёт) | |||
if(rows.length > maxRows) { | |||
for(var i = maxRows; i < rows.length; i++) { rows[i].style.display = 'none'; } | |||
//кнопка скрывания/раскрывания | |||
var newRow = document.createElement('tr'); | |||
var newCell = document.createElement('td'); | |||
newCell.setAttribute('colspan', rows[1].children.length); | |||
newCell.style.textAlign = 'center'; | |||
var button = document.createElement('button'); | |||
button.className = 'toggleTable'; | |||
button.textContent = 'развернуть'; | |||
newCell.appendChild(button); | |||
newRow.appendChild(newCell); | |||
newRow.style.backgroundColor = '#deffde'; //цвет такой, как в заголовке | |||
table.appendChild(newRow); | |||
//функция для кнопки | |||
button.addEventListener('click', function() { | |||
var isVisible = rows[6].style.display === 'table-row'; | |||
for(var i = 6; i < rows.length; i++) { rows[i].style.display = isVisible ? 'none' : 'table-row'; } | |||
button.textContent = isVisible ? 'развернуть' : 'свернуть'; | |||
}); | |||
} | |||
}); | |||
} | } | ||
Текущая версия от 22:59, 1 марта 2025
/* Размещённый здесь код JavaScript будет загружаться пользователям при обращении к каждой странице */
if (document.getElementsByClassName('nomobile').length==0 && document.getElementsByClassName('spcss').length>0) {
document.querySelector('.spcss').style.display = 'block';
}
if(document.querySelector('table.dpl.long')) {
var tables = document.querySelectorAll('table.dpl.long');
tables.forEach(function(table) {
var rows = table.querySelectorAll('tr');
var maxRows = 6; //максимальное количество строк (заголовок не в счёт)
if(rows.length > maxRows) {
for(var i = maxRows; i < rows.length; i++) { rows[i].style.display = 'none'; }
//кнопка скрывания/раскрывания
var newRow = document.createElement('tr');
var newCell = document.createElement('td');
newCell.setAttribute('colspan', rows[1].children.length);
newCell.style.textAlign = 'center';
var button = document.createElement('button');
button.className = 'toggleTable';
button.textContent = 'развернуть';
newCell.appendChild(button);
newRow.appendChild(newCell);
newRow.style.backgroundColor = '#deffde'; //цвет такой, как в заголовке
table.appendChild(newRow);
//функция для кнопки
button.addEventListener('click', function() {
var isVisible = rows[6].style.display === 'table-row';
for(var i = 6; i < rows.length; i++) { rows[i].style.display = isVisible ? 'none' : 'table-row'; }
button.textContent = isVisible ? 'развернуть' : 'свернуть';
});
}
});
}