MediaWiki discusión:Gadget-CollapsibleCombo.js

Contenido de la página no disponible en otros idiomas.
De Wikcionario, el diccionario libre

Corrección (toggle)[editar]

Modificación para solventar la eliminación de la función de jquery "toggle" con dos parámetros. No está convenientemente probado, pero lo pongo como paliativo:

var autoCollapse = 2;
var collapseCaption = "ocultar ▲";
var expandCaption = "mostrar ▼";
 
var collapseCaptionM = "▲";
var expandCaptionM = "▼";
 
var contCollapsible = 0;
 
// == Código del plegado/desplegado de tablas ==
 
// <nowiki>
/** Collapsible tables *********************************************************
 *
 *  Description: Allows tables to be collapsed, showing only the header. See
 *               [[Wikipedia:NavFrame]].
 *  Maintainers: [[User:R. Koot]] (en), [[Usuario:Juan renombrado]]
 */
 
$(document).ready(
 
function () {
    $("table.collapsible").each(
 
    function () { /* only add button and increment count if there is a header row to work with */
        var speed = "fast",
            $toggleButton,
            $contenido, $header = $(this).children("caption:first");
        if (!$header.length) {
            $header = $(this).find("th:first");
 
            if (!$header.length) {
                return;
            }
            speed = "";
            $contenido = $(this.rows).slice(1);
        } else {
            $contenido = $(this.tBodies);
        }
 
        (++contCollapsible);
 
        $toggleButton = $("<a></a>").text(collapseCaptionM).addClass("collapsible-toggle");

	$header.addClass("collapsible-flexor").click(function(){
		if($contenido.is(":visible")){
			$contenido.hide(speed, function(){
				$toggleButton.text(expandCaptionM);
				$header.addClass("collapsed-header");
			});
		}else{
			$contenido.show(speed, function(){
				$toggleButton.text(collapseCaptionM);
				$header.removeClass("collapsed-header");
			});
		}
		return false;
	})
	.append($toggleButton);
 
        if ($(this).hasClass("collapsed")) {
            $header.click();
        }
    });
 
});
 
// </nowiki>
 
// == Código del plegado/desplegado de plantillas ==
 
$(document).ready(
 
function () {
    $("div.NavFrame").each(function () {
        (++contCollapsible);
        var $NavToggle = $("<a></a>").text(collapseCaption).addClass("NavToggle"),
            $contenido = $(this).children(".NavPic, .NavContent").first().addClass("collapsible-hidable");
 
 	$(this).children(".NavHead").addClass("collapsible-flexor").click(function(){
		var $that = $(this);
		if($contenido.is(":visible")){
			$contenido.hide().promise().done(function(){
				$NavToggle.text(expandCaption);
				$that.addClass("collapsed-header");
			});
		}else{
			$contenido.show().promise().done(function(){
				$NavToggle.text(collapseCaption);
				$that.removeClass("collapsed-header");
			});
		}
		return false;
	}).append($NavToggle);
 
        if ($(this).hasClass("collapsed")) {
            $(this).children(".NavHead").click();
        }
    });
});
 
 
// == acciones globales ==
 
$(document).ready(function () {
    if (contCollapsible >= autoCollapse) {
        $("div.NavFrame.autocollapse, table.collapsible.autocollapse").find(".collapsible-flexor:not(.collapsed-header)").click();
    }
    if (contCollapsible) {
        var enlaceDesplegar = mw.util.addPortletLink('p-tb', '', 'Desplegar todo', 'p-eswikt-collapsible-s', 'Despliega todas las tablas ocultas'),
            enlacePlegar = mw.util.addPortletLink('p-tb', '', 'Plegar todo', 'p-eswikt-collapsible-h', 'Pliega todas las tablas plegables');
        $(enlaceDesplegar).click(function () {
            $(".collapsible-flexor.collapsed-header").click();
	    return false;
        }).css('font-style', 'italic');
        $(enlacePlegar).click(function () {
            $(".collapsible-flexor:not(.collapsed-header)").click();
	    return false;
        }).css('font-style', 'italic');
    }
});

--Guã Þin Nomme (discusión) 11:09 6 ene 2015 (UTC)[responder]