MediaWiki:Common.js: различия между версиями
Pok (обсуждение | вклад) Нет описания правки |
Pok (обсуждение | вклад) мНет описания правки |
||
| Строка 447: | Строка 447: | ||
mw.hook('wikipage.content').add(function($content) { | mw.hook('wikipage.content').add(function($content) { | ||
var $toc = $('#toc ul'); // Находим TOC | var $toc = $('#toc ul'); // Находим TOC | ||
var tocItems = $toc.find('li'); // Получаем текущие элементы TOC | |||
var tocNumber = tocItems.length + 1; // Начинаем нумерацию с первого доступного номера | |||
// Перебираем все кастомные заголовки | |||
$content.find('.custom-heading').each(function() { | |||
var sectionId = $(this).attr('id') || 'custom-heading-' + tocNumber; | |||
$content.find('.custom-heading').each(function( | |||
var sectionId = $(this).attr('id') || 'custom-heading-' + | |||
$(this).attr('id', sectionId); // Присваиваем уникальный id заголовку | $(this).attr('id', sectionId); // Присваиваем уникальный id заголовку | ||
// Создаем ссылку "править" | // Создаем ссылку "править" | ||
| Строка 480: | Строка 460: | ||
$('<a>').attr('href', editUrl).text('править') | $('<a>').attr('href', editUrl).text('править') | ||
); | ); | ||
$(this | $(this).append(editLink); // Добавляем ссылку "править" к заголовку | ||
// | // Создаем элемент в оглавлении (TOC) | ||
var headingText = $(this).clone().children().remove().end().text(); // Получаем текст без ссылки "править" | var headingText = $(this).clone().children().remove().end().text(); // Получаем текст без ссылки "править" | ||
var tocItem = $('<li>').append( | var tocItem = $('<li>').append( | ||
$('<a>').attr('href', '#' + sectionId).text( | $('<a>').attr('href', '#' + sectionId).append( | ||
$('<span>').addClass('tocnumber').text(tocNumber + '. '), | |||
$('<span>').addClass('toctext').text(headingText) | |||
) | |||
); | ); | ||
$toc.append(tocItem); // Добавляем элемент в оглавление | $toc.append(tocItem); // Добавляем элемент в оглавление | ||
tocNumber++; // Увеличиваем номер для следующего элемента | |||
}); | }); | ||
}); | }); | ||