Die Bedingung erfüllt sich nicht
Markus
- javascript
0 cyx230 Markus0 Sven Rautenberg0 Cyx23
0 Sven Rautenberg0 Socke0 Markus
Es gibt dieses eine Script von Selfhtml ,das den bg solange erhöht bis der Bildschirm weis ist .So mein Problem ist ,daß ich dieses Script mit der Anweisung verbinden wollte, bei weissem Bildschirm eine Seite zu laden ,aber diese Anweisung scheint irgendwie ignoriert zu werden ,obwohl ich diese while Schleife schon überall versucht habe auf verschiedenste Art und Weise einzusetzen.
while (document.bgColor == "ffffff")
{
window.location.href = "site/frameset.html"
}
und hier nun das Script aus Selfhtml
var X = new Array
("0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F");
var x1 = 0, x2 = 0;
for(i = 0; i < 255; ++i)
{
document.bgColor = X[x1] + X[x2] + X[x1] + X[x2] + X[x1] + X[x2]; x2 = x2 + 1;
if(x2 % 16 == 0)
{
x2 = 0; x1 = x1 + 1;
}
}
Hi,
vielleicht while (document.bgColor == "#ffffff"),
wenn die Fraben überhaupt immer gleich bezeichnet werden,
z.B. "white" o. "black" oder rgb()
Du könnstet den Seitenwechsel doch besser in die
for-Schleife setzen, if(i>254) o.ä. ?
Grüsse
Cyx23
Hi,
vielleicht while (document.bgColor == "#ffffff"),
wenn die Fraben überhaupt immer gleich bezeichnet werden,
z.B. "white" o. "black" oder rgb()
Du könnstet den Seitenwechsel doch besser in die
for-Schleife setzen, if(i>254) o.ä. ?
Grüsse
Cyx23
hab ich alles schon probiert ,ausserdem steht in SelfHTML das die Farben in diesem Fall ohne Gatterzeichen notiert werden (es geht mit auch nicht)
Hi,
vielleicht while (document.bgColor == "#ffffff"),
wenn die Fraben überhaupt immer gleich bezeichnet werden,
z.B. "white" o. "black" oder rgb()
Du könnstet den Seitenwechsel doch besser in die
for-Schleife setzen, if(i>254) o.ä. ?
Grüsse
Cyx23
hab ich alles schon probiert ,ausserdem steht in SelfHTML das die Farben in diesem Fall ohne Gatterzeichen notiert werden (es geht mit auch nicht)
Mit "alert(document.bgColor)" kannst du eine Dialogbox ausgeben lassen, die dir den Inhalt des Objekts ausgibt. Mit dem kannst du dann vergleichen. Aber sieh' zuerst meine andere Antwort...
- Sven Rautenberg
Hallo,
hab ich alles schon probiert ,ausserdem steht in SelfHTML das die Farben in diesem Fall ohne Gatterzeichen notiert werden (es geht mit auch nicht)
das meiste aus SelfHTML stimmt ja auch, aber ich bekomme bei
alert(document.bgColor) das ganze mit Gatter.
(Wenn's so wichtig ist nochmal versuchen mit substr()o.ä.)
Ich würde die for-Schleife verändern, evtl. was mit timeout
oder interval, jedenfalls von dort über if(i>253) oder so.
Grüsse
Cyx23
while (document.bgColor == "ffffff")
Erstens: Warum eine while-Schleife? Willst du die Seite immer und immer wieder aufrufen? Nimm lieber if, das macht von der Programmlogik mehr Sinn, selbst wenn while funktionieren sollte.
{
window.location.href = "site/frameset.html"
}
und hier nun das Script aus Selfhtml
var X = new Array
("0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F");
var x1 = 0, x2 = 0;
for(i = 0; i < 255; ++i)
{
document.bgColor = X[x1] + X[x2] + X[x1] + X[x2] + X[x1] + X[x2]; x2 = x2 + 1;
if(x2 % 16 == 0)
{
x2 = 0; x1 = x1 + 1;
}
}
Zweitens: Warum setzt du nicht einfach die Anweisung für das neue Laden ans Ende dieser for-Schleife? Dann wird die Umleitung sofort ausgeführt, sobald die Schleife beendet und die Seite weiß ist:
window.location.href = "site/frameset.html";
Ganz ohne while-Schleife.
- Sven Rautenberg
Versuche doch einmal mit folgendem Quelltext
if (document.bgColor == "ffffff")
document.location.href=deinLink
oder nach dem Durchlauf der Schleife zum Wechsel der Farbe
function ChangeBgColor()
{
while (Bedingung für den Farbenwechse)
{
Farbenwechsel
}
document.location.href="url";
}
Wenn die Funktion aufgerufen wird, so wird die Schleife durchlaufen und eine neue Seite wird geladen.
Ich hoffe, dass es funktioniert.
MFG Socke
Argh ,es ist ja so einfach ,wenn ich nach der Schleife window.location.href = "bla" notiere geht es
Danke Socke