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

Материал из База знаний АО АСП
Перейти к навигации Перейти к поиску
Нет описания правки
Нет описания правки
Строка 1: Строка 1:
$(document).ready(function() {
$(document).ready(function() {
     console.log("Скрипт управления деревом категорий загружен.");
     $('.CategoryTreeItem').on('click', function(event) {
        // Проверяем, не был ли клик на ссылке внутри элемента
        if ($(event.target).is('a')) {
            return; // Если клик был на ссылке, ничего не делаем
        }


    // Перехватываем клик по ссылке категории
         var toggleButton = $(this).find('.CategoryTreeToggle');
    $('#p-categorytree-portlet .CategoryTreeBullet a').on('click', function(event) {
         if (toggleButton.length) {
        event.preventDefault(); // Предотвращаем переход по ссылке
             // Симулируем клик на кнопке toggle
 
             toggleButton.click();
         var $categoryItem = $(this).closest('.CategoryTreeItem');
        var $children = $categoryItem.find('.CategoryTreeChildren').first();
 
        console.log("Клик по ссылке:", $(this).text()); // Выводим текст ссылки в консоль
 
        // Проверяем, скрыта ли вложенная категория, и переключаем состояние
         if ($children.length) {
             if ($children.is(':visible')) {
                console.log("Скрываем вложенные категории:", $children);
                $children.slideUp(200);
             } else {
                console.log("Раскрываем вложенные категории:", $children);
                $children.slideDown(200);
            }
        } else {
            console.log("Нет вложенных категорий у:", $(this).text());
         }
         }
     });
     });
});
});

Версия от 07:09, 26 февраля 2025

$(document).ready(function() {
    $('.CategoryTreeItem').on('click', function(event) {
        // Проверяем, не был ли клик на ссылке внутри элемента
        if ($(event.target).is('a')) {
            return; // Если клик был на ссылке, ничего не делаем
        }

        var toggleButton = $(this).find('.CategoryTreeToggle');
        if (toggleButton.length) {
            // Симулируем клик на кнопке toggle
            toggleButton.click();
        }
    });
});