Bitte helfen, Anfänger

meilon

Erfahrenes Mitglied
Ich wollte mich eigentlich gar nicht groß in JavaScript reinsteigern, aber für soetwas muss ich es wohl, bin ja eher der PHP Freak!

Ich wollte, nur als Hinweis damit sich keiner beschwert, eine Info beim Betreten meiner Homepage anzeigen lassen. Da soll ausgeguggt werden ob es ein IE oder nicht ist oder wie es mit der Auflösung aussieht. Das mit der Browser Detection geht, nur das mit der Auflöung nicht. Später sollen dass ganze noch hübsch mit Bildchen gemacht werden, das bekomm ich aber noch hin :-)
Hier mein Versuch:
Code:
<script type="text/javascript">
<!--
document.write("Es wird ein kleiner Browsercheck gemacht, bitte warten...<br>");
if(navigator.appName == "Microsoft Internet Explorer") { 
 document.write("Meine Homepage ist für Microsoft IE gebaut, du unterstützt das!<br>");
}
else {
 document.write("<font color=red>Meine Homepage ist für Microsoft IE gebaut, du unterstützt das nicht. Es könnte zu Darstellungsschwierigkeiten kommen!</font><br>");
}

if(screen.height >= "1024" && screen.width >= "768") {
 document.write("Die Mindesauflösung von 1024x768 erfüllst du!<br><br>"
}
else {
 document.write("<font color=red>Du erfüllst nicht die Mindestauflösung von 1024x768. Es könnte zu Darstellungsschwierigkeiten kommen!</font><br><br>");
}
//-->
</script>
Und wo ich euch hier schon Frage, wie baue ich eine Zeitverzögerung ein, sodass es nach "Es wird ein kleiner Browsercheck gemacht, bitte warten..." 2 Sekunden erst wieder weiter geht?

mfg
Klink
 
Was das erste Problem angeht... du hast dort bei document.write() die schliessende Klammer vergessen.

Zum Zweiten... zeitverzögert geht das mit document.write() nicht, du könntest aber die Sachen, welche erst später angezeigt werden sollen, in einen versteckten Layer packen, und diesen nach 2 sec anzeigen lassen.

Um Dinge zeitverzögert ausführen zu lassen, gibts die Methode "setTimeout()".
 
ok, ich habe jetzt etwas versucht. Jetzt erschein zuerst der bitte warten Text, nach 2 Sekunden ist die Seite leer und es baut sich ohne die gewünschte Formatierung der Restliche Text auf. Wie kann ich das kompensieren?
Ich benutze eine Seite mit einer Tabelle (eine Zelle), sodass ich den Inhalt immer in der Mitte habe. Aber sobald sich die Seite leert, hat er die Tabelle wie den StyleSheet vergessen. Hier der Code der ganzen Seite:
Code:
<html>
<title>Klink's Homepage</title>
<link rel="stylesheet" type="text/css" href="homepage/style.css">
<head>
<meta http-equiv="content-type" content="text/html; iso-8859-1">
//weitere Meta's...
<meta http-equiv="refresh" content="2; URL=homepage/index.php">

</head>
<table widht="100%" height="100%">
<tr height="100%">
<td width="5%" align="center">

<script type="text/javascript">
<!--
function check() {
 if(navigator.appName == "Microsoft Internet Explorer") { 
  document.write("<br>Meine Homepage ist für Microsoft IE gebaut, du unterstützt das!<br>");
 }
 else {
  document.write("<br><font color=red>Meine Homepage ist für Microsoft IE gebaut, du unterstützt das nicht. Es könnte zu Darstellungsschwierigkeiten kommen!</font><br>");
 }
 if(screen.width >= 1024 && screen.height >= 768) {
  document.write("Die Mindesauflösung von 1024x768 erfüllst du!<br><br>");
 }
 else {
  document.write("<font color=red>Du erfüllst nicht die Mindestauflösung von 1024x768. Es könnte zu Darstellungsschwierigkeiten kommen!</font><br><br>");
 }
 document.write("Du wirst in wenigen Sekunden auf meine Homepage weitergeleitet. Falls nichts passiert, klicke auf diesen <a href=\"homepage/index.php\" alt=\"Weiterleitungslink\">Link</a>");
}

document.write("Es wird ein kleiner Browsercheck gemacht, bitte warten...");

window.setTimeout("check()", 2000);
//-->
</script>

</td>
</tr>
</table>
</body>
</html>
 
Wie schon erwähnt, kannst du nicht nachträglich etwas in die Seite schreiben... dabei wird der Rest des Dokuments überschrieben.

Schreibe das, was später erscheinen soll, sofort in einen Layer, welcher erstmal nicht angezeigt wird.... nach 2 sec änderst du dann dessen visibility-Eigenschaft.
 
ok, ich habe es gebacken bekommen. Danke für die Hilfe! Wenn jemand den Code haben will, poste ich ihn!

mfg
Klink
 

Neue Beiträge

Zurück