Array

MediaWiki:Common.js: Difference between revisions

(Created page with "→‎Any JavaScript here will be loaded for all users on every page load.: $(document).ready(function () { // Buscar cada bloque que define el collapse $(".collapsible-header").each(function () { var header = $(this); var content = header.next(".collapsible-content"); // SOLO el siguiente bloque // Si no hay contenido asociado, ignorar if (content.length === 0) return; // Asegurar que empiece cerrado co...")
 
No edit summary
 
Line 1: Line 1:
/* Any JavaScript here will be loaded for all users on every page load. */
/* Any JavaScript here will be loaded for all users on every page load. */


// COLLAPSIBLE HEADER
$(document).ready(function () {
$(document).ready(function () {
    // Buscar cada bloque que define el collapse
     $(".collapsible-header").each(function () {
     $(".collapsible-header").each(function () {
       
         var header = $(this);
         var header = $(this);
         var content = header.next(".collapsible-content"); // SOLO el siguiente bloque
         var content = header.next(".collapsible-content");
 
         // Skip if there is no associated collapsible-content block
         // Si no hay contenido asociado, ignorar
         if (content.length === 0) return;
         if (content.length === 0) return;
 
        // Check if the section should start open
         // Asegurar que empiece cerrado
        var startsOpen = header.hasClass("open");
         content.hide();
         // Hide content only if it should start closed
 
         if (!startsOpen) {
         // Indicador visual
            content.hide();
         header.append(' <span class="collapse-toggle">[+]</span>');
        }
 
         // Initial toggle indicator
         // Hacer clickeable
        var indicator = startsOpen ? "[-]" : "[+]";
         header.append(' <span class="collapse-toggle">' + indicator + '</span>');
         // Make header clickable
         header.css("cursor", "pointer");
         header.css("cursor", "pointer");
 
         // Collapse / Expand behavior
         // Evento de colapso
         header.on("click", function () {
         header.on("click", function () {
             content.slideToggle(200);
             content.slideToggle(200);
            // Cambiar indicador
             var toggle = header.find(".collapse-toggle");
             var toggle = header.find(".collapse-toggle");
             toggle.text(toggle.text() === "[+]" ? "[-]" : "[+]");
             toggle.text(toggle.text() === "[+]" ? "[-]" : "[+]");
         });
         });
     });
     });
});
});

Latest revision as of 12:25, 26 November 2025

/* Any JavaScript here will be loaded for all users on every page load. */

// COLLAPSIBLE HEADER
$(document).ready(function () {
    $(".collapsible-header").each(function () {
        var header = $(this);
        var content = header.next(".collapsible-content");
        // Skip if there is no associated collapsible-content block
        if (content.length === 0) return;
        // Check if the section should start open
        var startsOpen = header.hasClass("open");
        // Hide content only if it should start closed
        if (!startsOpen) {
            content.hide();
        }
        // Initial toggle indicator
        var indicator = startsOpen ? "[-]" : "[+]";
        header.append(' <span class="collapse-toggle">' + indicator + '</span>');
        // Make header clickable
        header.css("cursor", "pointer");
        // Collapse / Expand behavior
        header.on("click", function () {
            content.slideToggle(200);
            var toggle = header.find(".collapse-toggle");
            toggle.text(toggle.text() === "[+]" ? "[-]" : "[+]");
        });
    });
});