Модуль:CheckboxHideSpacesuitHelmet: различия между версиями
Материал из Space Station 14 Вики
Pok (обсуждение | вклад) мНет описания правки |
Pok (обсуждение | вклад) мНет описания правки |
||
Строка 4: | Строка 4: | ||
local elementSelector = frame.args[1] or ".spacesuit-helmet" | local elementSelector = frame.args[1] or ".spacesuit-helmet" | ||
local script | -- Генерация HTML и JavaScript кода | ||
local html = mw.html.create('div') | |||
html:tag('script') | |||
:attr('type', 'text/javascript') | |||
:wikitext([[ | |||
$(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 | ||
return tostring(html) | |||
end | end | ||
return p | return p |
Версия от 16:51, 14 июля 2024
Для документации этого модуля может быть создана страница Модуль:CheckboxHideSpacesuitHelmet/doc
local p = {} function p.CheckboxHideSpacesuitHelmet(frame) local elementSelector = frame.args[1] or ".spacesuit-helmet" -- Генерация HTML и JavaScript кода local html = mw.html.create('div') html:tag('script') :attr('type', 'text/javascript') :wikitext([[ $(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 return tostring(html) end return p