MediaWiki:Gadget-specialchars-dropdown.js
Uwaga: aby zobaczyć zmiany po opublikowaniu, może zajść potrzeba wyczyszczenia pamięci podręcznej przeglądarki.
- Firefox / Safari: Przytrzymaj Shift podczas klikania Odśwież bieżącą stronę, lub naciśnij klawisze Ctrl+F5, lub Ctrl+R (⌘-R na komputerze Mac)
- Google Chrome: Naciśnij Ctrl-Shift-R (⌘-Shift-R na komputerze Mac)
- Internet Explorer / Edge: Przytrzymaj Ctrl, jednocześnie klikając Odśwież, lub naciśnij klawisze Ctrl+F5
- Opera: Naciśnij klawisze Ctrl+F5.
/* Skrypt odpowiedzialny za znaki specjalne [[MediaWiki:Edittools]] */
var storageKey = 'ext.gadget.specialchars-dropdown.selection';
$( function() {
var specialchars = document.getElementById( 'editpage-specialchars' );
if ( !specialchars ) {
return;
}
var select = document.createElement( 'select' );
select.style.display = 'inline';
select.onchange = function () {
chooseCharSubset( this.selectedIndex );
};
var groups = specialchars.getElementsByTagName( 'p' );
for ( var i = 0; i < groups.length; i++ ) {
var option = document.createElement( 'option' );
var title = groups[i].title;
option.appendChild( document.createTextNode( title ) );
select.appendChild( option );
}
specialchars.insertBefore( select, specialchars.firstChild );
/* default subset from cookie */
var selectedCharSubset = parseInt( mw.storage.get( storageKey ) );
if ( isNaN( selectedCharSubset ) ) {
selectedCharSubset = 0;
}
/* update dropdown control to value of cookie */
select.selectedIndex = selectedCharSubset;
/* display the subset indicated by the cookie */
chooseCharSubset( selectedCharSubset );
} );
/* select subsection of special characters */
function chooseCharSubset( s ) {
var l = $( '#editpage-specialchars' ).find( 'p' );
for ( var i = 0; i < l.length; i++ ) {
l[i].style.display = i === s ? 'inline' : 'none';
l[i].style.visibility = i === s ? 'visible' : 'hidden';
}
mw.storage.set( storageKey, s );
}