Замечание: Возможно, после публикации вам придётся очистить кэш своего браузера, чтобы увидеть изменения.
- Firefox / Safari: Удерживая клавишу Shift, нажмите на панели инструментов Обновить либо нажмите Ctrl+F5 или Ctrl+R (⌘+R на Mac)
- Google Chrome: Нажмите Ctrl+Shift+R (⌘+Shift+R на Mac)
- Edge: Удерживая Ctrl, нажмите Обновить либо нажмите Ctrl+F5
- Opera: Нажмите Ctrl+F5.
jQuery(function($) {
/**
* Функция, которая находит якорь в URL, ищет соответствующий
* сворачиваемый блок и раскрывает его.
*/
function expandSectionFromHash() {
// Получаем якорь из URL (например, "Уровень_5")
var hash = window.location.hash.substring(1);
if (!hash) {
return; // Выходим, если якоря нет
}
// Декодируем якорь на случай, если он содержит кириллицу
var decodedHash = decodeURIComponent(hash);
// Ищем элемент-якорь на странице
var $targetAnchor = $('#' + $.escapeSelector(decodedHash));
if (!$targetAnchor.length) {
return; // Выходим, если якорь не найден
}
// Находим блок для раскрытия (родитель якоря, а затем следующий блок)
var $collapsibleBlock = $targetAnchor.closest('.visually-hidden').next('.collapsible-block');
if ($collapsibleBlock.length) {
// Находим внутри него сам сворачиваемый контент
var $collapsibleContent = $collapsibleBlock.find('.mw-collapsible');
// Если блок свёрнут, раскрываем его
if ($collapsibleContent.hasClass('mw-collapsed')) {
$collapsibleContent.removeClass('mw-collapsed');
$collapsibleContent.attr('aria-expanded', 'true');
}
}
}
// 1. Выполняем функцию при первоначальной загрузке страницы
// Мы ждём хук 'wikipage.content', чтобы убедиться, что контент точно на месте
mw.hook('wikipage.content').add(expandSectionFromHash);
// 2. Выполняем ТУ ЖЕ САМУЮ функцию каждый раз, когда меняется якорь в URL
// (например, при клике на ссылку в содержании)
$(window).on('hashchange', expandSectionFromHash);
});