Diferencies ente revisiones de «MediaWiki:Gadget-CollapsibleCombo.js»

Contenido eliminado Contenido añadido
Esbardu (alderique | contribuciones)
Páxina creada con «var autoCollapse = 2; var collapseCaption = 'anubrir ▲'; var expandCaption = 'amosar ▼'; var collapseCaptionM = '▲'; var expandCaptionM = '▼'; var contCollapsible...»
(Nun hai diferencies)

Revisión a fecha de 15:05 15 xin 2017

var autoCollapse = 2;
var collapseCaption = 'anubrir ▲';
var expandCaption = 'amosar ▼';

var collapseCaptionM = '▲';
var expandCaptionM = '▼';

var contCollapsible = 0;

// Códigu del plegáu/esplegáu de tables

/** Collapsible tables *********************************************************
 *
 *  Description: Allows tables to be collapsed, showing only the header. See
 *               [[Wikipedia:NavFrame]].
 *  Maintainers: [[User:R. Koot]] (en), [[Usuario:Juan renombrado]]
 */

$( function () {
	$( 'table.collapsible' ).each( function () {
		var $this = $( this ), $toggleButton, $contenido, speed = 'fast';
		var $header = $this.children( 'caption:first' );
		
		if ( !$header.length ) {
			$header = $this.find( 'th:first' );
			
			if ( !$header.length ) {
				return true;
			}
			
			speed = '';
			$contenido = $( this.rows ).slice( 1 );
		} else {
			$contenido = $( this.tBodies );
		}
		
		$toggleButton = $( '<a>' )
			.text( collapseCaptionM )
			.addClass( 'collapsible-toggle' );
		
		$header.addClass( 'collapsible-flexor' )
			.on( '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.trigger( 'click' );
		}
		
		contCollapsible++;
	} );
} );

// Códigu del plegáu/esplegáu de plantíes

$( function () {
	$( 'div.NavFrame' ).each( function () {
		var $this = $( this );
		var $NavToggle = $( '<a>' )
			.text( collapseCaption )
			.addClass( 'NavToggle' );
		
		var $contenido = $this.children( '.NavPic, .NavContent' ).first()
			.addClass( 'collapsible-hidable' );
		
		$this.children( '.NavHead' )
			.addClass( 'collapsible-flexor' )
			.on( 'click', function () {
				if ( $contenido.is( ':visible' ) ) {
					$contenido.hide();
					$NavToggle.text( expandCaption );
					$( this ).addClass( 'collapsed-header' );
				} else {
					$contenido.show();
					$NavToggle.text( collapseCaption );
					$( this ).removeClass( 'collapsed-header' );
				}
				
				return false;
			} )
			.append( $NavToggle );
		
		if ( $this.hasClass( 'collapsed' ) ) {
			$this.children( '.NavHead' ).trigger( 'click' );
		}
		
		contCollapsible++;
	} );
} );

// Aiciones globales

$( function () {
	if ( contCollapsible >= autoCollapse ) {
		$( 'div.NavFrame.autocollapse, table.collapsible.autocollapse' )
			.find( '.collapsible-flexor:not(.collapsed-header)' )
			.trigger( 'click' );
	}
	
	if ( location.hash ) {
		location.hash = location.hash;
	}
	
	if ( contCollapsible ) {
		$( mw.util.addPortletLink(
			'p-tb',
			'#',
			'Desplegar too',
			'p-eswikt-collapsible-s',
			'Despliega toles tables anubríes'
		) )
		.css( 'font-style', 'italic' )
		.on( 'click', function () {
			$( '.collapsible-flexor.collapsed-header' ).trigger( 'click' );
			return false;
		} );
		
		$( mw.util.addPortletLink(
			'p-tb',
			'#',
			'Plegar too',
			'p-eswikt-collapsible-h',
			'Plega toles tables plegables'
		) )
		.css( 'font-style', 'italic' )
		.on( 'click', function () {
			$( '.collapsible-flexor:not(.collapsed-header)' ).trigger( 'click' );
			return false;
		} );
	}
} );