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

Нет описания правки
Метка: отменено
Нет описания правки
 
(не показано 8 промежуточных версий этого же участника)
Строка 33: Строка 33:
});
});


function getPageImage(title, size = 200) {
// Автоскролл после открытия спойлера в меню Citizen
     return fetch(
$(document).on('click', '.dropdown .dropbtn', function () {
        mw.util.wikiScript('api') +
 
        `?action=query&titles=${encodeURIComponent(title)}&prop=pageimages&piprop=thumbnail&pithumbsize=${size}&format=json`
     var $dropdown = $(this).closest('.dropdown');
     )
    var $content = $dropdown.find('.dropdown-content');
     .then(res => res.json())
 
    .then(data => {
     // Даем CSS-анимации завершиться, если она есть
        const pages = data.query.pages;
     setTimeout(function () {
        const page = Object.values(pages)[0];
 
         return page.thumbnail ? page.thumbnail.source : null;
        // Если блок теперь виден — скроллим к нему
     });
        if ($content.is(':visible')) {
}
            var top = $dropdown.offset().top - 80; // отступ сверху (регулируется)
            $('html, body').animate({ scrollTop: top }, 300);
         }
 
     }, 200);
});