Kategorien
| Bitte befüllt die Seite DarkfleetWiki:NoSpamUser in alphabetischer Reihenfolge mit den Namen von Wikibenutzern, welche keine Spam-Bots sind. |
MediaWiki:Common.js: Unterschied zwischen den Versionen
Aus DarkfleetWiki
Galak (Diskussion | Beiträge) |
Galak (Diskussion | Beiträge) |
||
| Zeile 344: | Zeile 344: | ||
| − | flake.style. | + | flake.style.left = x + 'px'; |
flake.style.bottom = y + 'px'; | flake.style.bottom = y + 'px'; | ||
} | } | ||
Version vom 27. Dezember 2010, 19:59 Uhr
/* Hinweis: Die Wiki-Überschriften sind JavaScript-technisch auskommentiert
== 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
// ============================================================
== 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);
}
}
}
aOnloadFunctions[aOnloadFunctions.length] = createNavigationBarToggleButton;
/* END Dynamic Navigation Bars
// ============================================================
== Besucherecke ==
// NEEDS multiple onload functions */
function init_gamesdyn()
{
div = document.getElementById('p-Besucherecke');
/* li = document.createElement('li');
* ifr = document.createElement('iframe');
* ifr.setAttribute('src', 'http://voting.gdynamite.de/45/');
* ifr.setAttribute('width', '88');
* ifr.setAttribute('height', '31');
* ifr.setAttribute('frameborder', '0');
* ifr.setAttribute('marginwidth', '0');
* ifr.setAttribute('marginheight', '0');
* ifr.setAttribute('scrolling', 'no');
* ifr.setAttribute('hspace', '0');
* ifr.setAttribute('vspace', '0');
* li.appendChild(document.createTextNode('Vote für Freewar:'));
* li.appendChild(ifr);
* div.getElementsByTagName('ul')[0].appendChild(li); */
toolbar = document.getElementById('p-tb')
toolbar.parentNode.insertBefore(div, toolbar);
}
aOnloadFunctions[aOnloadFunctions.length] = init_gamesdyn;
/* END Besucherecke
// ============================================================
== NPC-Bilder ein/aus ==
// NEEDS multiple onload functions */
function showNI(bool)
{
if (bool)
{
document.cookie="tiramon_deShowNI=1";
}
else
{
document.cookie="tiramon_deShowNI=0";
}
location.reload();
}
function work_on_npcimages()
{
// add show/hide links to all maps
findmenu = document.getElementById("NIinout");
if (findmenu)
{
showlink=document.createElement("a");
showlink.setAttribute("href","Javascript:showNI(true)");
showlink.appendChild(document.createTextNode('anzeigen'));
hidelink=document.createElement("a");
hidelink.setAttribute("href","Javascript:showNI(false)");
hidelink.appendChild(document.createTextNode('verbergen'));
findmenu.appendChild(showlink);
findmenu.appendChild(document.createTextNode('/'));
findmenu.appendChild(hidelink);
}
// enable display of NIs if wished
for(var i=0; foundspan = document.getElementsByTagName("span")[i]; i++)
{
var tiramon_deShowNI=document.cookie;
if (tiramon_deShowNI.indexOf("tiramon_deShowNI=")=="-1") return(-1);
if (tiramon_deShowNI.charAt(tiramon_deShowNI.indexOf("tiramon_deShowNI=")+17)!="1") return(-1);
if (foundspan.className == "NI")
{
foundspan.setAttribute("style", "display:inline;");
}
}
}
aOnloadFunctions[aOnloadFunctions.length] = work_on_npcimages;
/* END NPC-Images
// ============================================================
== Forschungsrechner ==
// BEGIN import code used by user skill pages
// SEE ALSO [[:Kategorie:Forschung]] */
document.write('<script type="text/javascript" src="/index.php?title=MediaWiki:CFoptions.js&action=raw&ctype=text/javascript&dontcountme=s"></script>');
/* END import code used by user skill pages
// ============================================================
function hackTableSort() {
window.ts_getInnerText = function(el) {
sortkeys = getElementsByClassName(el, 'span', 'sortkey'); // getElementsByClassName is defined in wikibits.js
if (sortkeys.length) return getInnerText(sortkeys[0]);
return getInnerText(el);
}
}
== schnee ==
*/
////////////////////////////////////////////////////////////////////////
// SnowFlakes-Script (c) 2009, Dominik Scholz / go4u.de Webdesign
////////////////////////////////////////////////////////////////////////
// amount of snow flakes
var snow_amount = 10;
// colors of snowflakes
var snow_color = new Array('#AAAACC', '#DDDDFF', '#CCCCDD', '#F3F3F3', '#F0FFFF');
// fonts to be used for snowflakes
var snow_type = new Array('Arial Black', 'Arial Narrow', 'Times', 'Comic Sans MS');
// char used for snowflakes
var snow_char ='<img src="http://welt1.freewar.de/freewar/images/items/feuerwerk1.gif" />';
// vertical snowflakes speed
var snow_speed = 2.4;
// timeout for animation
var snow_timeout = 50;
// maximum size of snowflakes
var snow_maxsize = 22;
// minimum size of snowflakes
var snow_minsize = 8;
// maximal drift in each direction (left/right)
var snow_drift = 15;
////////////////////// don't edit below this line //////////////////////
var snow_flakes = new Array();
var snow_body_width = 0;
var snow_body_height = 0;
var snow_resizing = false;
var snow_range = snow_maxsize - snow_minsize;
var snow_eventHandlerResize = window.onresize;
var snow_eventHandlerLoad = window.onload;
// register window resize event
window.onresize = snow_resize;
window.onload = snow_start;
// start snow
function snow_start()
{
if (snow_eventHandlerLoad != null) snow_eventHandlerLoad();
// init window size
snow_window_size();
// add new flakes
while (snow_amount > snow_flakes.length)
snow_flake_create(snow_flakes.length);
// start to move snow
snow_move();
}
////////////////////////////// functions ///////////////////////////////
// creates a new snowflake
function snow_flake_create(i)
{
// select body tag
var insertBody = document.getElementsByTagName('body')[0];
// create span child for flake
var insertFlake = document.createElement('div');
insertFlake.id = 'flake'+i;
insertFlake.style.position = 'absolute';
insertFlake.style.left = '0px';
insertFlake.style.top = '-'+snow_maxsize+'px';
insertFlake.style.zIndex = 20000;
insertFlake.innerHTML = snow_char;
insertBody.appendChild(insertFlake);
// create array element
snow_flakes[i] = new Array();
snow_flakes[i].x = snow_random(snow_body_width-2*snow_drift-snow_maxsize-3) + snow_drift+1;
snow_flakes[i].y = -snow_maxsize-snow_random(snow_body_height);
snow_flakes[i].size = snow_random(snow_range) + snow_minsize;
snow_flakes[i].count = snow_random(10000);
insertFlake.style.color = snow_color[snow_random(snow_color.length-1)];
insertFlake.style.family = snow_type[snow_random(snow_type.length-1)];
insertFlake.style.fontSize = (snow_random(snow_range)+snow_minsize)+"px";
}
// restarts an existing snow flake
function snow_flake_restart(i)
{
snow_flakes[i] = new Array();
snow_flakes[i].x = snow_random(snow_body_width-2*snow_drift-snow_maxsize-3) + snow_drift+1;
snow_flakes[i].y = -snow_maxsize;
snow_flakes[i].size = snow_random(snow_range) + snow_minsize;
snow_flakes[i].count = 0;
}
// move existing flakes
function snow_move()
{
for (i=0; i<snow_flakes.length; i++)
{
var flake = document.getElementById('flake'+i);
// restart existing flake
if ((snow_flakes[i].y + snow_flakes[i].size + 20) >= snow_body_height)
snow_flake_restart(i);
snow_flakes[i].count++;
snow_flakes[i].y += snow_speed;
x = snow_flakes[i].x + Math.sin(snow_flakes[i].count / snow_flakes[i].size) * 15;
y = snow_flakes[i].y;
flake.style.left = x + 'px';
flake.style.bottom = y + 'px';
}
// do it again
window.setTimeout('snow_move();', snow_timeout);
}
function snow_random(range)
{
return Math.floor(Math.random() * range);
}
function snow_window_size()
{
// save old width
var old_width = snow_body_width;
// get new width
snow_body_width = document.body.clientWidth - snow_maxsize - 20;
snow_body_height = document.body.clientHeight;
if ((window.innerHeight) && (window.innerHeight > snow_body_height))
snow_body_height = window.innerHeight;
else if ((document.body && document.body.offsetHeight) && (document.body.offsetHeight > snow_body_height))
snow_body_height = document.body.offsetHeight;
// calculate correction ratio
var ratio = snow_body_width / old_width;
// for all flakes
for (i=0; i<snow_flakes.length; i++)
{
var flake = document.getElementById('flake'+i);
// do width correction
snow_flakes[i].x *= ratio;
// restart existing flake
if ((snow_flakes[i].y + snow_flakes[i].size + 20) >= snow_body_height)
snow_flake_restart(i);
}
}
// handle resize event
function snow_resize()
{
if (snow_eventHandlerResize != null) snow_eventHandlerResize();
snow_window_size();
}
/* END snow
// ============================================================
addOnloadHook(hackTableSort);
// END OF FILE */