| Zeile 16: |
Zeile 16: |
| | // (Wiki-Standard-Signatur, bitte das Leerzeichen nach den zwei Strichen beachten) | | // (Wiki-Standard-Signatur, bitte das Leerzeichen nach den zwei Strichen beachten) |
| | // var usersignature = '-- \~\~\~\~'; | | // var usersignature = '-- \~\~\~\~'; |
| | + | |
| | + | // ============================================================ |
| | + | // BEGIN Enable multiple onload functions |
| | + | |
| | + | // setup onload functions this way: |
| | + | // onloadFuncts[onloadFuncts.length] = function_name; // without brackets! |
| | + | |
| | + | |
| | + | // 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 |
| | + | if (typeof NavigationBarShowDefault == 'undefined' ) { |
| | + | var NavigationBarShowDefault = 0; |
| | + | } |
| | + | |
| | + | // 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); |
| | + | } |
| | + | } |
| | + | |
| | + | } |
| | + | |
| | + | onloadFuncts[onloadFuncts.length] = createNavigationBarToggleButton; |
| | + | |
| | + | // END Dynamic Navigation Bars |