hilfdirselbst.ch
Facebook Twitter gamper-media
"Funktioniert nicht" ist keine hinreichende Fehlerbeschreibung.
Floydian
Beiträge: 26
18. Nov 2003, 19:37
Beitrag #1 von 4
Bewertung:
(1276 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Script zeitgesteuert ausführen


Hallo alle,
ich habe ein Script, das die Farbe der Seite von einer in eine andere "faded". Wie kann ich dieses Script nun Zeitgesteuert ausführen lassen - also so'n paar Sekunden nach Seitenaufruf.

Leider habe ich noch keinen Zeitgesteuerten "Fader" gefunden.

Für eure (Deine) Hilfe wäre ich sehr dankbar !

Bis denne ...
Floyd Top
 
X
SabineP  M 
Beiträge: 7586
18. Nov 2003, 19:46
Beitrag #2 von 4
Beitrag ID: #59424
Bewertung:
(1276 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Script zeitgesteuert ausführen


Floyd, lies mal hier nach:
http://selfhtml.teamone.de/...ndow.htm#set_timeout

mit

window.setTimeout("funktionsname()",Zeit_in_Millisekunden);

kannst Du javascript-Funktionen nach einer bestimmten Zeit aufrufen.

Gruß Sabine
als Antwort auf: [#59421] Top
 
Floydian
Beiträge: 26
18. Nov 2003, 21:18
Beitrag #3 von 4
Beitrag ID: #59435
Bewertung:
(1276 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Script zeitgesteuert ausführen


Besten Dank Sabine !

Hier ist der Code für den Fader.
Kannst Du oder jemand anderes mir sagen, was ich hier verändern muß, um den Wechsel von einer Farbe in die andere zu verlangsamen ?
Ist geklaut aber ich bin in der Lernphase !
Schöne Grüße...
Floyd


-----------------------------------------------------
function makearray(n) {
this.length = n;
for(var i = 1; i <= n; i++)
this = 0;
return this;
}
hexa = new makearray(16);
for(var i = 0; i < 10; i++)
hexa = i;
hexa[10]="a"; hexa[11]="b"; hexa[12]="c";
hexa[13]="d"; hexa[14]="e"; hexa[15]="f";
function hex(i) {
if (i < 0)
return "00";
else if (i > 255)
return "ff";
else
return "" + hexa[Math.floor(i/16)] + hexa[i%16];
}
function setbgColor(r, g, b) {
var hr = hex(r); var hg = hex(g); var hb = hex(b);
document.bgColor = "#"+hr+hg+hb;
}
function fade(sr, sg, sb, er, eg, eb, step) {
for(var i = 0; i <= step; i++) {
setbgColor(
Math.floor(sr * ((step-i)/step) + er * (i/step)),
Math.floor(sg * ((step-i)/step) + eg * (i/step)),
Math.floor(sb * ((step-i)/step) + eb * (i/step)));
}
}
function fadein() {
fade(240,232,223,0,0,0,255);
}
window.setTimeout("fadein()",2000);

------------------------------------------------------
als Antwort auf: [#59421]
(Dieser Beitrag wurde von Floydian am 18. Nov 2003, 21:24 geändert)
Top
 
Markus Walker  M 
Beiträge: 494
20. Nov 2003, 08:23
Beitrag #4 von 4
Beitrag ID: #59594
Bewertung:
(1276 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Script zeitgesteuert ausführen


window.setTimeout() führt die aufgeführte Anweisung genau einmal aus, was hier wohl nicht Sinn der Sache ist. Eine repetitive Ausführung kann mit window.setInterval() erreicht werden:
http://selfhtml.teamone.de/...dow.htm#set_interval

Aber achte auf die Abbruch-Bedingung. Diese muss unbedingt gesetzt werden, da sonst das Script in alle Ewigkeit oder bis zum nächsten Computer-Crash läuft. Dieser Crash ist bei der setInterval() Methode zu erwarten, wenn sie lange genug läuft, da diese an einem Memmory-Leak leided; also bitte nicht stundenlang laufen lassen.


Zur Umwandlung von Dezimal- in Hex-Zahlen könnte übrigens die Number.toString() Methode benutzt werden:
http://selfhtml.teamone.de/...number.htm#to_string

function hex(dec_number) {
if (dec_number == 0) return("00"); //ergibt eine doppelte Null
else return(dec_number.toString(16));
}

als Antwort auf: [#59421] Top
 
X