MediaWiki:Common.js

Nota: dopo aver salvato, potrebbe essere necessario pulire la cache del proprio browser per vedere i cambiamenti.

  • Firefox / Safari: tenere premuto il tasto delle maiuscole Shift e fare clic su Ricarica, oppure premere Ctrl-F5 o Ctrl-R (⌘-R su Mac)
  • Google Chrome: premere Ctrl-Shift-R (⌘-Shift-R su un Mac)
  • Internet Explorer: tenere premuto il tasto Ctrl e fare clic su Aggiorna, oppure premere Ctrl-F5
  • Opera: Vai nel Menu → Impostazioni (Opera → Preferenze su un Mac) e poi in Privacy & sicurezza → Pulisci dati del browser → Immagini e file nella cache.
 var autoCollapse = 1 ;
 var collapseCaption = 'Nascondi' ;
 var expandCaption = 'Mostra' ;
 
 function collapseTable ( tableIndex ) {
         var Button = document. getElementById ( 'collapseButton' + tableIndex ) ;
         var Table = document. getElementById ( 'collapsibleTable' + tableIndex ) ;
 
         if ( ! Table || ! Button ) {
                 return false ;
         }
 
         var Rows = Table. rows ;
 
         if ( Button. firstChild . data == collapseCaption ) {
                 for ( var i = 1 ; i < Rows. length ; i ++ ) {
                         Rows [ i ] . style . display = 'none' ;
                 }
                 Button. firstChild . data = expandCaption ;
         } else {
                 for ( var i = 1 ; i < Rows. length ; i ++ ) {
                         Rows [ i ] . style . display = Rows [ 0 ] . style . display ;
                 }
                 Button. firstChild . data = collapseCaption ;
         }
 }
 
 function createCollapseButtons ( ) {
         var tableIndex = 0 ;
         var NavigationBoxes = new Object ( ) ;
         var Tables = document. getElementsByTagName ( 'table' ) ;
 
         for ( var i = 0 ; i < Tables. length ; i ++ ) {
                 if ( hasClass ( Tables [ i ] , 'collapsible' ) ) {
 

                         var HeaderRow = Tables [ i ] . getElementsByTagName ( 'tr' ) [ 0 ] ;
                         if ( ! HeaderRow ) {
                                 continue ;
                         }
                         var Header = HeaderRow. getElementsByTagName ( 'th' ) [ 0 ] ;
                         if ( ! Header ) {
                                 continue ;
                         }
 
                         NavigationBoxes [ tableIndex ] = Tables [ i ] ;
                         Tables [ i ] . setAttribute ( 'id' , 'collapsibleTable' + tableIndex ) ;
 
                         var Button = document. createElement ( 'span' ) ;
                         var ButtonLink = document. createElement ( 'a' ) ;
                         var ButtonText = document. createTextNode ( collapseCaption ) ;
 
                         Button. className = 'collapseButton' ; // Styles are declared in [[MediaWiki:Common.css]]
 
                         ButtonLink. style . color = Header. style . color ;
                         ButtonLink. setAttribute ( 'id' , 'collapseButton' + tableIndex ) ;
                         ButtonLink. setAttribute ( 'href' , "javascript:collapseTable(" + tableIndex + ");" ) ;
                         ButtonLink. appendChild ( ButtonText ) ;
 
                         Button. appendChild ( document. createTextNode ( '[' ) ) ;
                         Button. appendChild ( ButtonLink ) ;
                         Button. appendChild ( document. createTextNode ( ']' ) ) ;
 
                         Header. insertBefore ( Button , Header. childNodes [ 0 ] ) ;
                         tableIndex ++;
                 }
         }
 
         for ( var i = 0 ; i < tableIndex ; i ++ ) {
                 if ( hasClass ( NavigationBoxes [ i ] , 'collapsed' ) || ( tableIndex >= autoCollapse && hasClass ( NavigationBoxes [ i ] , 'autocollapse' ) ) ) {
                         collapseTable ( i ) ;
                 } else if ( hasClass ( NavigationBoxes [ i ] , 'innercollapse' ) ) {
                         var element = NavigationBoxes [ i ] ;
                         while ( element = element. parentNode ) {
                                 if ( hasClass ( element , 'outercollapse' ) ) {
                                         collapseTable ( i ) ;
                                         break ;
                                 }
                         }
                 }
         }
 }
 
 addOnloadHook ( createCollapseButtons ) ;


 
 var hasClass = ( function ( ) {
         var reCache = { } ;
         return function ( element , className ) {
                 return ( reCache [ className ] ? reCache [ className ] : ( reCache [ className ] = new RegExp ( "(?: \\ s|^)" + className + "(?: \\ s|$)" ) ) ) . test ( element. className ) ;
         } ;
 } ) ( ) ;