Hinweis: Zum Anlegen oder Ändern von Seiten ist ein Benutzerkonto mit einer überprüften E-Mail-Adresse notwendig.
MediaWiki:Common.js: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Rolf (Diskussion | Beiträge) K Die Seite wurde neu angelegt: →Jedes JavaScript hier wird für alle Benutzer für jede Seite geladen.: //================================================================================ //*** Dy... |
Rolf (Diskussion | Beiträge) KKeine Bearbeitungszusammenfassung |
||
| Zeile 112: | Zeile 112: | ||
} | } | ||
}); | }); | ||
//================================================================================ | |||
// Einklappbare Infoboxen von Curilias | |||
var HideInfobox = '[–]'; | |||
var ShowInfobox = '[+]'; | |||
function toggleInfobox(indexInfobox) { | |||
var InfoboxContent = document.getElementById("Infobox" + indexInfobox); | |||
var ToggleInfobox = document.getElementById("ToggleInfobox" + indexInfobox); | |||
if (!InfoboxContent || !ToggleInfobox) { return false; } | |||
if (ToggleInfobox.firstChild.data == HideInfobox) { | |||
InfoboxContent.style.display = 'none'; | |||
} else if (ToggleInfobox.firstChild.data == ShowInfobox) { | |||
InfoboxContent.style.display = 'block'; | |||
} | |||
if (ToggleInfobox.firstChild.data == HideInfobox) { | |||
ToggleInfobox.firstChild.data = ShowInfobox; | |||
} else { | |||
ToggleInfobox.firstChild.data = HideInfobox; | |||
} | |||
} | |||
function addToggleInfoboxButton() { | |||
var indexInfobox = 0; | |||
for (var i = 0; InfoboxContainer = document.getElementsByTagName("div")[i]; i++) { | |||
if (InfoboxContainer.className == "ib_container") { | |||
indexInfobox++; | |||
// create linkt to toggle visibility | |||
var ToggleInfobox = document.createElement("a"); | |||
ToggleInfobox.className = 'ib_toggle'; | |||
ToggleInfobox.setAttribute('title', 'Ein-/Ausklappen'); | |||
ToggleInfobox.setAttribute('id', 'ToggleInfobox' + indexInfobox ); | |||
ToggleInfobox.setAttribute('href', 'javascript:toggleInfobox(' + indexInfobox + ');'); | |||
var ToggleCaption = document.createTextNode(HideInfobox); | |||
ToggleInfobox.appendChild(ToggleCaption); | |||
InfoboxContainer.insertBefore(ToggleInfobox, InfoboxContainer.firstChild); | |||
for (var j=0; InfoboxContent = InfoboxContainer.getElementsByTagName("div")[j]; j++) { | |||
if (InfoboxContent.className == "ib_content") { | |||
InfoboxContent.setAttribute('id', 'Infobox' + indexInfobox); | |||
} | |||
} | |||
} | |||
} | |||
} | |||
addOnloadHook(addToggleInfoboxButton); | |||
Version vom 23. Juli 2008, 14:12 Uhr
/* Jedes JavaScript hier wird für alle Benutzer für jede Seite geladen. */
//================================================================================
//*** Dynamic Navigation Bars
// 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
if (typeof NavigationBarShowDefault == 'undefined' ) {
var NavigationBarShowDefault = 1;
}
// adds show/hide-button to navigation bars
addOnloadHook(function() {
// 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;
}
}
}
}
function toggleNavigationBarFunction(indexNavigationBar) {
return function() {
toggleNavigationBar(indexNavigationBar);
return false;
};
}
var indexNavigationBar = 0;
// iterate over all < div >-elements
var divs = document.getElementsByTagName("div");
for (var i=0; i<divs.length; i++) {
var NavFrame = divs[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', '#');
NavToggle.onclick = toggleNavigationBarFunction(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);
}
}
});
//================================================================================
// Einklappbare Infoboxen von Curilias
var HideInfobox = '[–]';
var ShowInfobox = '[+]';
function toggleInfobox(indexInfobox) {
var InfoboxContent = document.getElementById("Infobox" + indexInfobox);
var ToggleInfobox = document.getElementById("ToggleInfobox" + indexInfobox);
if (!InfoboxContent || !ToggleInfobox) { return false; }
if (ToggleInfobox.firstChild.data == HideInfobox) {
InfoboxContent.style.display = 'none';
} else if (ToggleInfobox.firstChild.data == ShowInfobox) {
InfoboxContent.style.display = 'block';
}
if (ToggleInfobox.firstChild.data == HideInfobox) {
ToggleInfobox.firstChild.data = ShowInfobox;
} else {
ToggleInfobox.firstChild.data = HideInfobox;
}
}
function addToggleInfoboxButton() {
var indexInfobox = 0;
for (var i = 0; InfoboxContainer = document.getElementsByTagName("div")[i]; i++) {
if (InfoboxContainer.className == "ib_container") {
indexInfobox++;
// create linkt to toggle visibility
var ToggleInfobox = document.createElement("a");
ToggleInfobox.className = 'ib_toggle';
ToggleInfobox.setAttribute('title', 'Ein-/Ausklappen');
ToggleInfobox.setAttribute('id', 'ToggleInfobox' + indexInfobox );
ToggleInfobox.setAttribute('href', 'javascript:toggleInfobox(' + indexInfobox + ');');
var ToggleCaption = document.createTextNode(HideInfobox);
ToggleInfobox.appendChild(ToggleCaption);
InfoboxContainer.insertBefore(ToggleInfobox, InfoboxContainer.firstChild);
for (var j=0; InfoboxContent = InfoboxContainer.getElementsByTagName("div")[j]; j++) {
if (InfoboxContent.className == "ib_content") {
InfoboxContent.setAttribute('id', 'Infobox' + indexInfobox);
}
}
}
}
}
addOnloadHook(addToggleInfoboxButton);