MediaWiki:InciskinMobile/JS/Inciclopedia:20 años de Inciclopedia/Mobile.js

De Inciclopedia
Ir a la navegación Ir a la búsqueda

Nota: Después de publicar, quizás necesite actualizar la caché de su navegador para ver los cambios.

  • Firefox/Safari: Mantenga presionada la tecla Shift mientras pulsa el botón Actualizar, o presiona Ctrl+F5 o Ctrl+R (⌘+R en Mac)
  • Google Chrome: presione Ctrl+Shift+R (⌘+Shift+R en Mac)
  • Internet Explorer/Edge: mantenga presionada Ctrl mientras pulsa Actualizar, o presione Ctrl+F5
  • Opera: Presiona Ctrl+F5.
mw.loader.using(['jquery'], function () {
    function initExpandableButtons() {
        $('.expandable-button').each(function () {
            var $button = $(this);
            var targetId = $button.attr('data-target');
            var $content = $('#' + targetId);

            if (!$content.length) return;

            // Estado inicial
            $button.attr('role', 'button');
            $button.attr('tabindex', '0');
            $button.attr('aria-expanded', 'false');
            $content.addClass('expandable-content');

            // Evento de toggle
            function toggleContent() {
                var expanded = $button.attr('aria-expanded') === 'true';
                $button.attr('aria-expanded', String(!expanded));
                $content.toggle(!expanded);
            }

            $button.on('click', toggleContent);
            $button.on('keypress', function (e) {
                if (e.key === 'Enter' || e.key === ' ') {
                    e.preventDefault();
                    toggleContent();
                }
            });
        });
    }

    $(initExpandableButtons);
});