MediaWiki:NavigationBar.js
Hinweis: Leere nach dem Veröffentlichen den Browser-Cache, um die Änderungen sehen zu können.
- Firefox/Safari: Umschalttaste drücken und gleichzeitig Aktualisieren anklicken oder entweder Strg+F5 oder Strg+R (⌘+R auf dem Mac) drücken
- Google Chrome: Umschalttaste+Strg+R (⌘+Umschalttaste+R auf dem Mac) drücken
- Internet Explorer/Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
- Opera: Strg+F5
// Show/Hide for navigation bars
// Author: Roland Unger, 2008-10-04
// license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
// This script is no longer used. It was replaced by Mediawiki Collapsible elements.
// Costumization
var showNavMsg = "Ausklappen", showNavTitleMsg = "Navigationsleiste ausklappen",
hideNavMsg = "Einklappen", hideNavTitleMsg = "Navigationsleiste einklappen",
NavigationBarShowDefault = 2;
// addEvent function is already defined in the TocTree extension
/* function addEvent(obj, eventType, afunction, isCapture) {
// W3C DOM
if (obj.addEventListener) {
obj.addEventListener(eventType, afunction, isCapture);
return true;
}
// Internet Explorer
else if (obj.attachEvent) {
return obj.attachEvent("on"+eventType, afunction);
}
else return false;
} */
function processNavBarEvent(event) {
var toggleLink = null;
// Interbet Explorer
if (event.srcElement) toggleLink = event.srcElement;
// W3C DOM
if (event.currentTarget) toggleLink = event.currentTarget;
if (toggleLink != null) {
if (event.type == "mouseover") toggleLink.style.textDecoration="underline";
if (event.type == "mouseout") toggleLink.style.textDecoration="none";
if (event.type == "click")
expandParentNode(toggleLink, toggleLink.innerHTML == showNavMsg);
}
}
function expandParentNode(aLink, expandIt) {
var i, divs = aLink.parentNode.getElementsByTagName("div");
if (expandIt) {
aLink.innerHTML = hideNavMsg;
aLink.title = hideNavTitleMsg;
for (i=0; i<divs.length; i++)
if ((divs[i].className == "navImage") || (divs[i].className == "navContent"))
divs[i].style.display = "block";
}
else {
aLink.innerHTML = showNavMsg;
aLink.title = showNavTitleMsg;
for (i=0; i<divs.length; i++)
if ((divs[i].className == "navImage") || (divs[i].className == "navContent"))
divs[i].style.display = "none";
}
}
function initNav() {
var divs, i, toggleIndex = 0;
if (document.getElementsByTagName) {
divs = document.getElementsByTagName("div");
for (i=0; i<divs.length; i++) {
if (divs[i].className == "navToggle") {
divs[i].style.display = "block";
addEvent(divs[i], "mouseout", processNavBarEvent, false);
addEvent(divs[i], "mouseover", processNavBarEvent, false);
addEvent(divs[i], "click", processNavBarEvent, false);
toggleIndex++;
}
}
// if more than NavigationBarShowDefault bars then hide them all
for (i=0; i<divs.length; i++)
if (divs[i].className == "navToggle")
expandParentNode(divs[i], toggleIndex <= NavigationBarShowDefault);
}
}
// $(initNav);
// $( document ).ready( initNav() );
$( initNav );