Модуль:CheckboxHideSpacesuitHelmet: различия между версиями

Материал из Space Station 14 Вики
Нет описания правки
Нет описания правки
 
(не показаны 2 промежуточные версии этого же участника)
Строка 4: Строка 4:
     local elementSelector = frame.args[1] or ".spacesuit-helmet"
     local elementSelector = frame.args[1] or ".spacesuit-helmet"


     local html = [=[<script>
     local script = [=[
         $(document).ready(function() {
         $(document).ready(function() {
             var elementSelector = "]=] .. elementSelector .. [=[";
             var elementSelector = "]=] .. elementSelector .. [=[";
Строка 24: Строка 24:
             });
             });
         });
         });
     </script>]=]
     ]=]


     return html
    -- Генерируем HTML с JavaScript кодом
    local html = '<script type="text/javascript">' .. script .. '</script>'
 
    -- Используем frame:extensionTag для вставки
     return frame:extensionTag('syntaxhighlight', html)
end
end


return p
return p

Текущая версия от 17:04, 14 июля 2024

Для документации этого модуля может быть создана страница Модуль:CheckboxHideSpacesuitHelmet/doc

local p = {}

function p.CheckboxHideSpacesuitHelmet(frame)
    local elementSelector = frame.args[1] or ".spacesuit-helmet"

    local script = [=[
        $(document).ready(function() {
            var elementSelector = "]=] .. elementSelector .. [=[";
            if (!$(elementSelector).length) {
                return; // Если класса нет, выходим из функции
            }

            // Кэшируем выборку элементов
            var $elements = $(elementSelector);

            // Обработчик события для чекбокса
            $('#toggleHideAll').off('change').on('change', function() {
                var isChecked = $(this).is(':checked');
                // Изменение видимости элементов
                $elements.each(function() {
                    var parentTr = $(this).closest('tr');
                    parentTr.toggle(!isChecked);
                });
            });
        });
    ]=]

    -- Генерируем HTML с JavaScript кодом
    local html = '<script type="text/javascript">' .. script .. '</script>'

    -- Используем frame:extensionTag для вставки
    return frame:extensionTag('syntaxhighlight', html)
end

return p