MediaWiki:Common.js: відмінності між версіями

нема опису редагування
Немає опису редагування
Немає опису редагування
 
Рядок 400: Рядок 400:
      
      
     // Клік поза overlay - закриваємо
     // Клік поза overlay - закриваємо
    $overlay.on('click', function(e) {
        if (e.target === this) {
            $overlay.removeClass('active');
            $input.val('');
        }
    });
});
/* ==================================================== */
/* МОБІЛЬНИЙ ПОШУК - ІКОНКА + OVERLAY */
/* ==================================================== */
$(function() {
    // Тільки для мобільних
    if (window.innerWidth > 768) return;
   
    // Створюємо кнопку пошуку
    var $searchBtn = $('<div class="mobile-search-btn">' +
        '<svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="#fff" stroke-width="2">' +
        '<circle cx="11" cy="11" r="8"/>' +
        '<path d="m21 21-4.35-4.35"/>' +
        '</svg>' +
    '</div>');
   
    // Створюємо overlay
    var $overlay = $('<div class="mobile-search-overlay">' +
        '<input type="text" placeholder="Пошук..." autocomplete="off" autocapitalize="off">' +
        '<div class="mobile-search-close">×</div>' +
    '</div>');
   
    // Додаємо в DOM
    $('.minerva-header .branding-box').after($searchBtn);
    $('body').append($overlay);
   
    var $input = $overlay.find('input');
    var $close = $overlay.find('.mobile-search-close');
   
    // Відкриття пошуку
    $searchBtn.on('click', function(e) {
        e.preventDefault();
        e.stopPropagation();
        $overlay.addClass('active');
        setTimeout(function() {
            $input.focus();
        }, 100);
    });
   
    // Закриття пошуку
    $close.on('click', function() {
        $overlay.removeClass('active');
        $input.val('');
    });
   
    // Enter - пошук
    $input.on('keydown', function(e) {
        if (e.keyCode === 13) { // Enter
            var query = $input.val().trim();
            if (query) {
                window.location.href = '/index.php?title=Спеціальна:Пошук&search=' + encodeURIComponent(query);
            }
        }
        if (e.keyCode === 27) { // Escape
            $overlay.removeClass('active');
            $input.val('');
        }
    });
   
    // Клік поза overlay - закриття
     $overlay.on('click', function(e) {
     $overlay.on('click', function(e) {
         if (e.target === this) {
         if (e.target === this) {