Benutzer:D47h0r/Common.js: Unterschied zwischen den Versionen
imported>D47h0r K (neu angelegt) |
imported>D47h0r K |
||
Zeile 1: | Zeile 1: | ||
− | /* | + | /* Das folgende JavaScript wird für alle Benutzer geladen. */ |
− | + | ||
− | / | + | //============================================================================== |
− | + | //*** Fügt einen Link "Alle Sprachen" auf der Hauptseite unter die Sprachverweise hinzu | |
− | // | + | |
− | + | addOnloadHook( function() { | |
− | + | if (wgTitle=='Hauptseite' && wgNamespaceNumber==0) { | |
− | + | addPortletLink('p-lang', 'http://meta.wikimedia.org/wiki/List_of_Wikibooks', | |
− | + | 'Alle Sprachen', 'interwiki-completelist', 'Alle Sprachversionen der Wikibooks'); | |
− | + | }; | |
− | + | }) | |
− | + | ||
− | // | + | // ============================================================ |
− | // | + | // BEGIN Enable multiple onload functions |
− | // | + | |
− | + | // setup onload functions this way: | |
− | var | + | // aOnloadFunctions[aOnloadFunctions.length] = function_name; // without brackets! |
− | + | ||
− | function | + | if (!window.aOnloadFunctions) { |
− | { | + | var aOnloadFunctions = new Array(); |
− | var | + | } |
− | if (! | + | |
− | return; | + | window.onload = function() { |
− | + | if (window.aOnloadFunctions) { | |
− | // if | + | for (var _i=0; _i<aOnloadFunctions.length; _i++) { |
− | + | aOnloadFunctions[_i](); | |
− | + | } | |
− | + | } | |
− | + | } | |
− | + | ||
− | + | // END Enable multiple onload functions | |
− | if ( | + | // ============================================================ |
− | + | ||
− | + | // ============================================================ | |
− | + | // BEGIN Dynamic Navigation Bars | |
− | + | // NEEDS Enable multiple onload functions | |
− | + | ||
+ | // set up the words in your language | ||
+ | var NavigationBarHide = 'Einklappen'; | ||
+ | var NavigationBarShow = 'Ausklappen'; | ||
+ | |||
+ | // set up max count of Navigation Bars on page, | ||
+ | // if there are more, all will be hidden | ||
+ | // NavigationBarShowDefault = 0; // all bars will be hidden | ||
+ | // NavigationBarShowDefault = 1; // on pages with more than 1 bar all bars will be hidden | ||
+ | var NavigationBarShowDefault = 1; | ||
+ | |||
+ | |||
+ | // shows and hides content and picture (if available) of navigation bars | ||
+ | // Parameters: | ||
+ | // indexNavigationBar: the index of navigation bar to be toggled | ||
+ | function toggleNavigationBar(indexNavigationBar) | ||
+ | { | ||
+ | var NavToggle = document.getElementById("NavToggle" + indexNavigationBar); | ||
+ | var NavFrame = document.getElementById("NavFrame" + indexNavigationBar); | ||
+ | |||
+ | if (!NavFrame || !NavToggle) { | ||
+ | return false; | ||
+ | } | ||
+ | |||
+ | // if shown now | ||
+ | if (NavToggle.firstChild.data == NavigationBarHide) { | ||
+ | for ( | ||
+ | var NavChild = NavFrame.firstChild; | ||
+ | NavChild != null; | ||
+ | NavChild = NavChild.nextSibling | ||
+ | ) { | ||
+ | if (NavChild.className == 'NavPic') { | ||
+ | NavChild.style.display = 'none'; | ||
+ | } | ||
+ | if (NavChild.className == 'NavContent') { | ||
+ | NavChild.style.display = 'none'; | ||
+ | } | ||
+ | if (NavChild.className == 'NavToggle') { | ||
+ | NavChild.firstChild.data = NavigationBarShow; | ||
} | } | ||
− | |||
− | |||
} | } | ||
− | + | ||
− | + | // if hidden now | |
− | + | } else if (NavToggle.firstChild.data == NavigationBarShow) { | |
− | + | for ( | |
− | + | var NavChild = NavFrame.firstChild; | |
− | + | NavChild != null; | |
− | + | NavChild = NavChild.nextSibling | |
− | + | ) { | |
− | + | if (NavChild.className == 'NavPic') { | |
− | + | NavChild.style.display = 'block'; | |
− | + | } | |
− | + | if (NavChild.className == 'NavContent') { | |
− | + | NavChild.style.display = 'block'; | |
− | + | } | |
− | + | if (NavChild.className == 'NavToggle') { | |
− | + | NavChild.firstChild.data = NavigationBarHide; | |
− | + | } | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
} | } | ||
} | } | ||
− | } | + | } |
− | + | ||
− | + | // adds show/hide-button to navigation bars | |
− | + | function createNavigationBarToggleButton() | |
− | + | { | |
− | + | var indexNavigationBar = 0; | |
− | + | // iterate over all < div >-elements | |
− | + | for(var i=0; NavFrame = document.getElementsByTagName("div")[i]; i++) | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | function | ||
− | { | ||
− | var | ||
− | |||
− | |||
− | // | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
{ | { | ||
− | + | // if found a navigation bar | |
− | if ( | + | if (NavFrame.className == "NavFrame") { |
− | + | ||
− | + | indexNavigationBar++; | |
− | + | var NavToggle = document.createElement("a"); | |
− | + | NavToggle.className = 'NavToggle'; | |
− | + | NavToggle.setAttribute('id', 'NavToggle' + indexNavigationBar); | |
− | + | NavToggle.setAttribute('href', 'javascript:toggleNavigationBar(' + indexNavigationBar + ');'); | |
− | + | ||
− | var | + | var NavToggleText = document.createTextNode(NavigationBarHide); |
− | + | NavToggle.appendChild(NavToggleText); | |
− | + | ||
− | + | // add NavToggle-Button as first div-element | |
− | + | // in < div class="NavFrame" > | |
− | + | NavFrame.insertBefore( | |
− | + | NavToggle, | |
− | + | NavFrame.firstChild | |
− | + | ); | |
− | + | NavFrame.setAttribute('id', 'NavFrame' + indexNavigationBar); | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
} | } | ||
} | } | ||
− | + | // if more Navigation Bars found than Default: hide all | |
− | // | + | if (NavigationBarShowDefault < indexNavigationBar) |
− | for (var i = | + | { |
− | + | for(var i=1; i<=indexNavigationBar; i++) | |
− | } | + | { |
− | + | toggleNavigationBar(i); | |
− | + | } | |
− | + | if(window.location.hash!="") | |
− | // </ | + | { |
+ | window.location.href = window.location.hash; | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | |||
+ | aOnloadFunctions[aOnloadFunctions.length] = createNavigationBarToggleButton; | ||
+ | |||
+ | // END Dynamic Navigation Bars | ||
+ | |||
+ | // ============================================================ | ||
+ | // BEGIN import Onlyifediting-functions | ||
+ | // SEE ALSO [[MediaWiki:Onlyifediting.js]] | ||
+ | |||
+ | if (document.URL.indexOf("action=edit") > 0 || document.URL.indexOf("action=submit") > 0) { | ||
+ | document.write('<script type="text/javascript" src="/w/index.php?title=MediaWiki:Onlyifediting.js&action=raw&ctype=text/javascript&dontcountme=s"></script>'); | ||
+ | } | ||
+ | |||
+ | // END import Onlyifediting-functions | ||
+ | // ============================================================ | ||
+ | |||
+ | // Klappboxen | ||
+ | mw.loader.load('http://en.wikibooks.org/w/index.php?title=MediaWiki:Common.js/CollapseElements.js&action=raw&ctype=text/javascript'); |
Version vom 15. November 2011, 21:08 Uhr
/* Das folgende JavaScript wird für alle Benutzer geladen. */
//==============================================================================
//*** Fügt einen Link "Alle Sprachen" auf der Hauptseite unter die Sprachverweise hinzu
addOnloadHook( function() {
if (wgTitle=='Hauptseite' && wgNamespaceNumber==0) {
addPortletLink('p-lang', 'http://meta.wikimedia.org/wiki/List_of_Wikibooks',
'Alle Sprachen', 'interwiki-completelist', 'Alle Sprachversionen der Wikibooks');
};
})
// ============================================================
// BEGIN Enable multiple onload functions
// setup onload functions this way:
// aOnloadFunctions[aOnloadFunctions.length] = function_name; // without brackets!
if (!window.aOnloadFunctions) {
var aOnloadFunctions = new Array();
}
window.onload = function() {
if (window.aOnloadFunctions) {
for (var _i=0; _i<aOnloadFunctions.length; _i++) {
aOnloadFunctions[_i]();
}
}
}
// END Enable multiple onload functions
// ============================================================
// ============================================================
// BEGIN Dynamic Navigation Bars
// NEEDS Enable multiple onload functions
// set up the words in your language
var NavigationBarHide = 'Einklappen';
var NavigationBarShow = 'Ausklappen';
// set up max count of Navigation Bars on page,
// if there are more, all will be hidden
// NavigationBarShowDefault = 0; // all bars will be hidden
// NavigationBarShowDefault = 1; // on pages with more than 1 bar all bars will be hidden
var NavigationBarShowDefault = 1;
// shows and hides content and picture (if available) of navigation bars
// Parameters:
// indexNavigationBar: the index of navigation bar to be toggled
function toggleNavigationBar(indexNavigationBar)
{
var NavToggle = document.getElementById("NavToggle" + indexNavigationBar);
var NavFrame = document.getElementById("NavFrame" + indexNavigationBar);
if (!NavFrame || !NavToggle) {
return false;
}
// if shown now
if (NavToggle.firstChild.data == NavigationBarHide) {
for (
var NavChild = NavFrame.firstChild;
NavChild != null;
NavChild = NavChild.nextSibling
) {
if (NavChild.className == 'NavPic') {
NavChild.style.display = 'none';
}
if (NavChild.className == 'NavContent') {
NavChild.style.display = 'none';
}
if (NavChild.className == 'NavToggle') {
NavChild.firstChild.data = NavigationBarShow;
}
}
// if hidden now
} else if (NavToggle.firstChild.data == NavigationBarShow) {
for (
var NavChild = NavFrame.firstChild;
NavChild != null;
NavChild = NavChild.nextSibling
) {
if (NavChild.className == 'NavPic') {
NavChild.style.display = 'block';
}
if (NavChild.className == 'NavContent') {
NavChild.style.display = 'block';
}
if (NavChild.className == 'NavToggle') {
NavChild.firstChild.data = NavigationBarHide;
}
}
}
}
// adds show/hide-button to navigation bars
function createNavigationBarToggleButton()
{
var indexNavigationBar = 0;
// iterate over all < div >-elements
for(var i=0; NavFrame = document.getElementsByTagName("div")[i]; i++)
{
// if found a navigation bar
if (NavFrame.className == "NavFrame") {
indexNavigationBar++;
var NavToggle = document.createElement("a");
NavToggle.className = 'NavToggle';
NavToggle.setAttribute('id', 'NavToggle' + indexNavigationBar);
NavToggle.setAttribute('href', 'javascript:toggleNavigationBar(' + indexNavigationBar + ');');
var NavToggleText = document.createTextNode(NavigationBarHide);
NavToggle.appendChild(NavToggleText);
// add NavToggle-Button as first div-element
// in < div class="NavFrame" >
NavFrame.insertBefore(
NavToggle,
NavFrame.firstChild
);
NavFrame.setAttribute('id', 'NavFrame' + indexNavigationBar);
}
}
// if more Navigation Bars found than Default: hide all
if (NavigationBarShowDefault < indexNavigationBar)
{
for(var i=1; i<=indexNavigationBar; i++)
{
toggleNavigationBar(i);
}
if(window.location.hash!="")
{
window.location.href = window.location.hash;
}
}
}
aOnloadFunctions[aOnloadFunctions.length] = createNavigationBarToggleButton;
// END Dynamic Navigation Bars
// ============================================================
// BEGIN import Onlyifediting-functions
// SEE ALSO [[MediaWiki:Onlyifediting.js]]
if (document.URL.indexOf("action=edit") > 0 || document.URL.indexOf("action=submit") > 0) {
document.write('<script type="text/javascript" src="/w/index.php?title=MediaWiki:Onlyifediting.js&action=raw&ctype=text/javascript&dontcountme=s"></script>');
}
// END import Onlyifediting-functions
// ============================================================
// Klappboxen
mw.loader.load('http://en.wikibooks.org/w/index.php?title=MediaWiki:Common.js/CollapseElements.js&action=raw&ctype=text/javascript');