MediaWiki:Common.js: Unterschied zwischen den Versionen
Vayus (Diskussion | Beiträge) |
Daroan (Diskussion | Beiträge) |
||
Zeile 98: | Zeile 98: | ||
}; | }; | ||
})(); | })(); | ||
+ | |||
+ | var snowsrc="http://wiki.metin2.de/images/f/f9/Schneeflocken_Icon.png" | ||
+ | var no = 25; | ||
+ | var hidesnowtime = 0; | ||
+ | var snowdistance = "pageheight"; | ||
+ | |||
+ | var ie4up = (document.all) ? 1 : 0; | ||
+ | var ns6up = (document.getElementById&&!document.all) ? 1 : 0; | ||
+ | |||
+ | function iecompattest(){ | ||
+ | return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body | ||
+ | } | ||
+ | |||
+ | var dx, xp, yp; // coordinate and position variables | ||
+ | var am, stx, sty; // amplitude and step variables | ||
+ | var i, doc_width = 800, doc_height = 600; | ||
+ | |||
+ | if (ns6up) { | ||
+ | doc_width = self.innerWidth; | ||
+ | doc_height = self.innerHeight; | ||
+ | } else if (ie4up) { | ||
+ | doc_width = iecompattest().clientWidth; | ||
+ | doc_height = iecompattest().clientHeight; | ||
+ | } | ||
+ | |||
+ | dx = new Array(); | ||
+ | xp = new Array(); | ||
+ | yp = new Array(); | ||
+ | am = new Array(); | ||
+ | stx = new Array(); | ||
+ | sty = new Array(); | ||
+ | snowsrc=(snowsrc.indexOf("dynamicdrive.com")!=-1)? "snow.gif" : snowsrc | ||
+ | for (i = 0; i < no; ++ i) { | ||
+ | dx[i] = 0; // set coordinate variables | ||
+ | xp[i] = Math.random()*(doc_width-50); // set position variables | ||
+ | yp[i] = Math.random()*doc_height; | ||
+ | am[i] = Math.random()*20; // set amplitude variables | ||
+ | stx[i] = 0.02 + Math.random()/10; // set step variables | ||
+ | sty[i] = 0.7 + Math.random(); // set step variables | ||
+ | if (ie4up||ns6up) { | ||
+ | if (i == 0) { | ||
+ | document.write("<div id=\"dot"+ i +"\" style=\"POSITION: absolute; Z-INDEX: "+ i +"; VISIBILITY: visible; TOP: 15px; LEFT: 15px;\"><a href=\"http://dynamicdrive.com\"><img src='"+snowsrc+"' border=\"0\"><\/a><\/div>"); | ||
+ | } else { | ||
+ | document.write("<div id=\"dot"+ i +"\" style=\"POSITION: absolute; Z-INDEX: "+ i +"; VISIBILITY: visible; TOP: 15px; LEFT: 15px;\"><img src='"+snowsrc+"' border=\"0\"><\/div>"); | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | |||
+ | function snowIE_NS6() { // IE and NS6 main animation function | ||
+ | doc_width = ns6up?window.innerWidth-10 : iecompattest().clientWidth-10; | ||
+ | doc_height=(window.innerHeight && snowdistance=="windowheight")? window.innerHeight : (ie4up && snowdistance=="windowheight")? iecompattest().clientHeight : (ie4up && !window.opera && snowdistance=="pageheight")? iecompattest().scrollHeight : iecompattest().offsetHeight; | ||
+ | for (i = 0; i < no; ++ i) { // iterate for every dot | ||
+ | yp[i] += sty[i]; | ||
+ | if (yp[i] > doc_height-50) { | ||
+ | xp[i] = Math.random()*(doc_width-am[i]-30); | ||
+ | yp[i] = 0; | ||
+ | stx[i] = 0.02 + Math.random()/10; | ||
+ | sty[i] = 0.7 + Math.random(); | ||
+ | } | ||
+ | dx[i] += stx[i]; | ||
+ | document.getElementById("dot"+i).style.top=yp[i]+"px"; | ||
+ | document.getElementById("dot"+i).style.left=xp[i] + am[i]*Math.sin(dx[i])+"px"; | ||
+ | } | ||
+ | snowtimer=setTimeout("snowIE_NS6()", 10); | ||
+ | } | ||
+ | |||
+ | function hidesnow(){ | ||
+ | if (window.snowtimer) clearTimeout(snowtimer) | ||
+ | for (i=0; i<no; i++) document.getElementById("dot"+i).style.visibility="hidden" | ||
+ | } | ||
+ | |||
+ | |||
+ | if (ie4up||ns6up){ | ||
+ | snowIE_NS6(); | ||
+ | if (hidesnowtime>0) | ||
+ | setTimeout("hidesnow()", hidesnowtime*1000) | ||
+ | } |
Version vom 28. Dezember 2014, 13:02 Uhr
$('div#content').append( "<div class='content-footer'></div>" );
var autoCollapse = 2;
var collapseCaption = 'weniger';
var expandCaption = 'mehr';
function collapseTable( tableIndex ) {
var Button = document.getElementById( 'collapseButton' + tableIndex );
var Table = document.getElementById( 'collapsibleTable' + tableIndex );
if ( !Table || !Button ) {
return false;
}
var Rows = Table.rows;
if ( Button.firstChild.data == collapseCaption ) {
for ( var i = 1; i < Rows.length; i++ ) {
Rows[i].style.display = 'none';
}
Button.firstChild.data = expandCaption;
} else {
for ( var i = 1; i < Rows.length; i++ ) {
Rows[i].style.display = Rows[0].style.display;
}
Button.firstChild.data = collapseCaption;
}
}
function createCollapseButtons() {
var tableIndex = 0;
var NavigationBoxes = new Object();
var Tables = document.getElementsByTagName( 'table' );
for ( var i = 0; i < Tables.length; i++ ) {
if ( hasClass( Tables[i], 'collapsible' ) ) {
/* only add button and increment count if there is a header row to work with */
var HeaderRow = Tables[i].getElementsByTagName( 'tr' )[0];
if ( !HeaderRow ) {
continue;
}
var Header = HeaderRow.getElementsByTagName( 'th' )[0];
if ( !Header ) {
continue;
}
NavigationBoxes[tableIndex] = Tables[i];
Tables[i].setAttribute( 'id', 'collapsibleTable' + tableIndex );
var Button = document.createElement( 'span' );
var ButtonLink = document.createElement( 'a' );
var ButtonText = document.createTextNode( collapseCaption );
Button.className = 'collapseButton'; // Styles are declared in [[MediaWiki:Common.css]]
ButtonLink.style.color = Header.style.color;
ButtonLink.setAttribute( 'id', 'collapseButton' + tableIndex );
ButtonLink.setAttribute( 'href', "javascript:collapseTable(" + tableIndex + ");" );
ButtonLink.appendChild( ButtonText );
Button.appendChild( document.createTextNode( '[' ) );
Button.appendChild( ButtonLink );
Button.appendChild( document.createTextNode( ']' ) );
Header.insertBefore( Button, Header.childNodes[0] );
tableIndex++;
}
}
for ( var i = 0; i < tableIndex; i++ ) {
if ( hasClass( NavigationBoxes[i], 'collapsed' ) || ( tableIndex >= autoCollapse && hasClass( NavigationBoxes[i], 'autocollapse' ) ) ) {
collapseTable( i );
} else if ( hasClass( NavigationBoxes[i], 'innercollapse' ) ) {
var element = NavigationBoxes[i];
while ( element = element.parentNode ) {
if ( hasClass( element, 'outercollapse' ) ) {
collapseTable( i );
break;
}
}
}
}
}
addOnloadHook( createCollapseButtons );
/** Test if an element has a certain class **************************************
*
* Description: Uses regular expressions and caching for better performance.
* Maintainers: [[User:Mike Dillon]], [[User:R. Koot]], [[User:SG]]
*/
var hasClass = ( function() {
var reCache = {};
return function( element, className ) {
return ( reCache[className] ? reCache[className] : ( reCache[className] = new RegExp( "(?:\\s|^)" + className + "(?:\\s|$)" ) ) ).test( element.className );
};
})();
var snowsrc="http://wiki.metin2.de/images/f/f9/Schneeflocken_Icon.png"
var no = 25;
var hidesnowtime = 0;
var snowdistance = "pageheight";
var ie4up = (document.all) ? 1 : 0;
var ns6up = (document.getElementById&&!document.all) ? 1 : 0;
function iecompattest(){
return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body
}
var dx, xp, yp; // coordinate and position variables
var am, stx, sty; // amplitude and step variables
var i, doc_width = 800, doc_height = 600;
if (ns6up) {
doc_width = self.innerWidth;
doc_height = self.innerHeight;
} else if (ie4up) {
doc_width = iecompattest().clientWidth;
doc_height = iecompattest().clientHeight;
}
dx = new Array();
xp = new Array();
yp = new Array();
am = new Array();
stx = new Array();
sty = new Array();
snowsrc=(snowsrc.indexOf("dynamicdrive.com")!=-1)? "snow.gif" : snowsrc
for (i = 0; i < no; ++ i) {
dx[i] = 0; // set coordinate variables
xp[i] = Math.random()*(doc_width-50); // set position variables
yp[i] = Math.random()*doc_height;
am[i] = Math.random()*20; // set amplitude variables
stx[i] = 0.02 + Math.random()/10; // set step variables
sty[i] = 0.7 + Math.random(); // set step variables
if (ie4up||ns6up) {
if (i == 0) {
document.write("<div id=\"dot"+ i +"\" style=\"POSITION: absolute; Z-INDEX: "+ i +"; VISIBILITY: visible; TOP: 15px; LEFT: 15px;\"><a href=\"http://dynamicdrive.com\"><img src='"+snowsrc+"' border=\"0\"><\/a><\/div>");
} else {
document.write("<div id=\"dot"+ i +"\" style=\"POSITION: absolute; Z-INDEX: "+ i +"; VISIBILITY: visible; TOP: 15px; LEFT: 15px;\"><img src='"+snowsrc+"' border=\"0\"><\/div>");
}
}
}
function snowIE_NS6() { // IE and NS6 main animation function
doc_width = ns6up?window.innerWidth-10 : iecompattest().clientWidth-10;
doc_height=(window.innerHeight && snowdistance=="windowheight")? window.innerHeight : (ie4up && snowdistance=="windowheight")? iecompattest().clientHeight : (ie4up && !window.opera && snowdistance=="pageheight")? iecompattest().scrollHeight : iecompattest().offsetHeight;
for (i = 0; i < no; ++ i) { // iterate for every dot
yp[i] += sty[i];
if (yp[i] > doc_height-50) {
xp[i] = Math.random()*(doc_width-am[i]-30);
yp[i] = 0;
stx[i] = 0.02 + Math.random()/10;
sty[i] = 0.7 + Math.random();
}
dx[i] += stx[i];
document.getElementById("dot"+i).style.top=yp[i]+"px";
document.getElementById("dot"+i).style.left=xp[i] + am[i]*Math.sin(dx[i])+"px";
}
snowtimer=setTimeout("snowIE_NS6()", 10);
}
function hidesnow(){
if (window.snowtimer) clearTimeout(snowtimer)
for (i=0; i<no; i++) document.getElementById("dot"+i).style.visibility="hidden"
}
if (ie4up||ns6up){
snowIE_NS6();
if (hidesnowtime>0)
setTimeout("hidesnow()", hidesnowtime*1000)
}