Википедия:Персональное оформление/Ограничение списка интервики-ссылок
Перейти к навигации
Перейти к поиску
/* Интервики в выпадающем списке.
Код для monobook.js
*/
// Список кодов языков, которые нужно показывать.
// Раскоментируйте нужную строчку или исправьте список так, как Вам нужно.
//
//var myLangs = ['en','de']; // английский и немецкий
var myLangs = ['en']; // английский
function iw_compact() {
var n = 0;
var my_langs = "^interwiki-" + "(" + myLangs.join('|') + ")"; // Create regex
var div1 = document.getElementById("p-lang"); // Find interwiki block and...
if(!div1) return;
var div2 = div1.getElementsByTagName("div")[0];
var li = div2.getElementsByTagName("li"); // ...interwiki list
var form = document.createElement("form"); // Create hidden form
form.style.display = "none";
form.innerHTML = '<select id="iw-dropdown-list" ' +
'onchange = "if(this.value) location.href=this.value;" ' +
'style = "margin: 0.5em 0.4em 0.4em; font-size:95%; width:10.9em;">' +
'<option id="iw-dropdown-first" value=""></option></select>';
div2.appendChild(form);
var sel = document.getElementById("iw-dropdown-list"); // Save reference
// to dropdown list
for(var i=0; e = li[i]; i++) { // iterate over iwiki list
if(!(e.className.match(my_langs) || e.title == "Избранная статья")) {
// for all, except user's favorits
e.style.display = "none"; // hide iwiki
var a = e.getElementsByTagName("a")[0];
var opt = document.createElement("option"); // create option for
opt.innerHTML = a.innerHTML; // dropdown list
opt.value = a.href;
sel.appendChild(opt);
n++;
}
}
if (n>0) { // if dropdown list isn't empty display it
document.getElementById("iw-dropdown-first").text = " +" + n;
form.style.display = "block";
}
} //function
addOnloadHook(iw_compact);
//