|
- JavaScript : Bildschirmschoner : Donut -
Der Bildschirmschoner (hier Modell "Donut") öffnet sich in 10 Sekunden, wenn Sie die Maus nicht bewegen und keine Taste drücken.
Erfolgreich getestet mit Internet Explorer 5.5 und 6.0. Netscape oder Opera haben keinen (über JavaScript auslösbaren) echten Fullscreenmodus.
Quelltext für die auslösende Seite:
<html>
<head>
<title>Bildschirmschoner / Startseite</title>
<script language="JavaScript">
ie5=(document.getElementById && document.all && document.styleSheets)?1:0;
var timer, status=0;
var x1=0, x2=0, y1=0, y2=0;
// Bildschirmschoner starten, wenn Timer bei 0
function timerCheck() {
if(status==1) {
timer-=1000;
if(timer>0) setTimeout('timerCheck()',1000);
else if(ie5)
var w=window.open('Donut.html','','fullscreen=1');
}
}
// Auf Mausbewegung prüfen
function mouseCheck() {
if(x1==0 && y1==0) {
x1=event.screenX;
y1=event.screenY;
setTimeout('x1=0; y1=0',40);
}
x2=event.screenX;
y2=event.screenY;
setTimeout('x2=0; y2=0',40);
if(x1 != x2 || y1 != y2) timerStart();
}
// Timer-Startwert setzen oder erneuern und Timer ggf. starten
function timerStart() {
timer=10*1000;
if(status==0) {
status=1;
timerCheck();
}
}
</script>
</head>
<!-- Event-Abfragen: (onmouseover und oncontextmenu sollen Sonderfälle abdecken) -->
<body onfocus="timerStart()" onmouseover="timerStart()" onmousemove="mouseCheck()"
onmouseup="timerStart()" onkeypress="timerStart()" oncontextmenu="status=0"
onblur="status=0">
</body>
</html>
Quelltext für die Schonerseite (Modell "Donut"):
<html>
<head>
<title>Bildschirmschoner / Modell "Donut"</title>
<style type="text/css">div{position:absolute;left:-500px;top:-500px;
font-size:400px}</style>
<script language="JavaScript">
// Auf Mausbewegung prüfen
var x1=0, x2=0, y1=0, y2=0;
function mouseCheck() {
if(x1==0 && y1==0) {
x1=event.screenX;
y1=event.screenY;
setTimeout('x1=0; y1=0',40);
}
x2=event.screenX;
y2=event.screenY;
setTimeout('x2=0; y2=0',40);
if(x1 != x2 || y1 != y2) close();
}
// Der Donut:
// Es sind einfach 100 "°", im Kreis angeordnet, dessen Radius sich verändert.
ScreenR=Math.sqrt(screen.width*screen.width+screen.height*screen.height)/2;
var R=0;
setInterval('R=R+1',100);
for(i=0;i<100;i++) document.write("<div id='P" + i + "'><p>°</p></div>");
function move() {
for(i=0; i<100; i++) {
document.all.tags("div")[i].style.left=(screen.width/2-85)+R*Math.cos(0.063*i);
document.all.tags("div")[i].style.top=(screen.height/2-130)+R*Math.sin(0.063*i);
}
if(R>ScreenR+50) R=0;
setTimeout ('move()',50);
}
</script>
</head>
<body bgcolor="#f5deb3" text="#d2691e" scroll="no" onload="move()"
onmousemove="mouseCheck()" onkeypress="window.close()">
</body>
</html>
Download Donut.zip (ca. 2 kb)
© 2001-2004 Albert Kluge - Alle Rechte vorbehalten
Impressum | Datenschutz | Nutzung | eMail
|