MediaWiki:Common.js
Note : après avoir enregistré tes préférences, tu devras forcer son rechargement complet en ignorant le contenu actuel du cache de ton explorateur pour voir les changements : Mozilla / Firefox / Konqueror / Safari : maintiens la touche Majuscule (Shift) en cliquant le bouton Actualiser (Reload,) ou presse Maj-Ctrl-R (Maj-Cmd-R sur Apple Mac) ; Internet Explorer / Opera : maintiens la touche Ctrl en cliquant le bouton Actualiser ou presse Ctrl-F5.
/* Tout JavaScript ici sera chargé avec chaque page accédée par n’importe quel utilisateur. */ // remove original createCollapseButtons functions from onload hook for demo var createCollapseButtonsOrig = createCollapseButtons; for (var i = 0; i < onloadFuncts.length; i ++) { if (onloadFuncts[i] == createCollapseButtonsOrig) { onloadFuncts.splice(i, 1); } } addOnloadHook( function() { for (var i = 0; i < onloadFuncts.length; i ++) { if (onloadFuncts[i] == createCollapseButtonsOrig) { onloadFuncts.splice(i, 1); } } } ); /** Collapsible tables ********************************************************* * * Description: Allows tables to be collapsed, showing only the header. See * [[Wikipedia:NavFrame]]. * Maintainers: [[User:R. Koot]] * Changed for better usability by [[User:Cacycle]] */ var autoCollapseTest = 2; var expandCaptionTest = '<a class="collapseButtonContent"><span class="collapseButtonShow"> </span>afficher</a>'; var collapseCaptionTest = '<a class="collapseButtonContent"><span class="collapseButtonHide"> </span>masquer</a>'; var expandTitle = 'Afficher le contenu masqué'; var collapseTitle = 'Masquer le contenu'; // detect MS-IE < 7 if (window.showModalDialog && window.clipboardData && window.createPopup) { // ignore MS-IE >= 7 in compatibility mode var agent = navigator.userAgent.match(/(MSIE)\W+(\d+\.\d+)/i); if ( (agent == null) || (parseFloat(agent[2]) < 7) ) { expandCaptionTest = '<a class="collapseButtonContent"><span class="collapseButtonShowIE6"> </span>afficher</a>'; collapseCaptionTest = '<a class="collapseButtonContent"><span class="collapseButtonHideIE6"> </span>masquer</a>'; } } collapseTableTest = function( tableIndex ) { var Button = document.getElementById( "collapseButton" + tableIndex ); var Table = document.getElementById( "collapsibleTable" + tableIndex ); if ( !Table || !Button ) { return false; } var Rows = Table.rows; if ( Button.title == collapseTitle ) { for ( var i = 1; i < Rows.length; i++ ) { Rows[i].style.display = "none"; } Button.innerHTML = expandCaptionTest; Button.title = expandTitle; } else { for ( var i = 1; i < Rows.length; i++ ) { Rows[i].style.display = Rows[0].style.display; } Button.innerHTML = collapseCaptionTest; Button.title = collapseTitle; } window.getSelection().removeAllRanges(); } function createCollapseButtonsTest() { 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" ) ) { // only add button and increment count if there is a header row to work with var HeaderRow = Tables[i].getElementsByTagName( "tr" )[0]; if (!HeaderRow) continue; var Header = HeaderRow.getElementsByTagName( "th" )[0]; if (!Header) continue; // insert space-balancing empty span left of the title var span = document.createElement('span'); span.className = 'collapseButtonBalance'; Header.insertBefore(span, Header.lastChild); NavigationBoxes[ tableIndex ] = Tables[i]; Tables[i].setAttribute( "id", "collapsibleTable" + tableIndex ); // Styles are declared in Common.css Header.innerHTML += '<span id="collapseButton' + tableIndex + '" class="collapseButtonTest" onclick="javascript:collapseTableTest(' + tableIndex + ')" title="' + collapseTitle + '">' + collapseCaptionTest + '</span>'; tableIndex++; } } for ( var i = 0; i < tableIndex; i++ ) { if ( hasClass( NavigationBoxes[i], "collapsed" ) || ( tableIndex >= autoCollapseTest && hasClass( NavigationBoxes[i], "autocollapse" ) ) ) { collapseTableTest( i ); } else if ( hasClass( NavigationBoxes[i], "innercollapse" ) ) { var element = NavigationBoxes[i]; while (element = element.parentNode) { if ( hasClass( element, "outercollapse" ) ) { collapseTableTest ( i ); break; } } } } } addOnloadHook(createCollapseButtonsTest);