MediaWiki:Common.js: различия между версиями

Материал из Музыкально-фольклорный депозитарий
 
Нет описания правки
Строка 1: Строка 1:
console.log('Сайт-скрипт успешно загружен!');
/* Размещённый здесь код JavaScript будет загружаться пользователям при обращении к каждой странице */
/* Размещённый здесь код JavaScript будет загружаться пользователям при обращении к каждой странице */
/* Превращаем текстовые ссылки на SVG в сайдбаре в кликабельные картинки */
/* Превращаем текстовые ссылки на SVG в сайдбаре в кликабельные картинки */

Версия от 12:25, 8 апреля 2026

console.log('Сайт-скрипт успешно загружен!');
/* Размещённый здесь код JavaScript будет загружаться пользователям при обращении к каждой странице */
/* Превращаем текстовые ссылки на SVG в сайдбаре в кликабельные картинки */
mw.hook('wikipage.content').add(function() {
    // Ищем блок БАННЕРЫ (Timeless генерирует ID 'p-БАННЕРЫ' или 'p-BANNERS')
    // Если блок называется иначе, посмотри его точный ID через F12 (Инспектор кода)
    var $bannerBlock = $('#p-БАННЕРЫ .sidebar-chunk, #p-BANNERS .sidebar-chunk').add('#p-БАННЕРЫ ul, #p-BANNERS ul');

    if ($bannerBlock.length) {
        $bannerBlock.find('li a').each(function() {
            var $link = $(this);
            var linkText = $link.text().trim();

            // Проверяем, оканчивается ли текст ссылки на .svg
            if (linkText.match(/\.svg$/i)) {
                // Строим URL к файлу. 
                // В MediaWiki путь к картинке можно получить через Special:FilePath
                var imgSrc = mw.util.getUrl('Special:FilePath/' + linkText);
                
                // Создаем тег картинки и заменяем им текст внутри ссылки
                var $img = $('<img>', {
                    src: imgSrc,
                    alt: 'Баннер',
                    css: {
                        'max-width': '100%',
                        'height': 'auto',
                        'display': 'block',
                        'margin': '5px auto'
                    }
                });
                $link.empty().append($img);
            }
        });
    }
});