Замечание: Возможно, после публикации вам придётся очистить кэш своего браузера, чтобы увидеть изменения.
- 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, ищет соответствующий
* сворачиваемый блок и раскрывает его, симулируя клик.
* Версия 3.0 - Добавлена микро-задержка для синхронизации со скриптами MediaWiki.
*/
function expandSectionFromHash() {
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 $header = $collapsibleBlock.find('.collapsible-header');
var $collapsibleContent = $collapsibleBlock.find('.mw-collapsible');
// Раскрываем блок, только если он действительно свёрнут
if ($collapsibleContent.hasClass('mw-collapsed')) {
// Используем минимальную задержку, чтобы скрипт MediaWiki
// успел "повесить" свой обработчик клика на элемент.
setTimeout(function() {
$header.trigger('click');
}, 50); // 50 миллисекунд - незаметно для глаза, но достаточно для техники.
}
}
}
// Выполняем функцию при первоначальной загрузке страницы
mw.hook('wikipage.content').add(expandSectionFromHash);
// Выполняем ТУ ЖЕ САМУЮ функцию каждый раз, когда меняется якорь в URL
$(window).on('hashchange', expandSectionFromHash);
});