script zeitverzögert starten (popup)
MDDM
- javascript
Hi Leute
Ich habe ein popup-fenster, das zur Zeit im body-tag per OnLoad gestartet wird. Mein Problem ist, dass es nicht sofort aufgehen soll, sondern erst 3 oder 5 sek. später.
So richtig habe ich da nichts gefunden außder dem hier: setTimeout("Fenster.focus()",40); aber schlau werde ich da nicht draus.
Danke und MfG MDDM
Hi,
So richtig habe ich da nichts gefunden außder dem hier: setTimeout("Fenster.focus()",40);
Du hast das einzige gefunden, was Du finden kannst.
aber schlau werde ich da nicht draus.
Wo genau ist denn dabei Dein Problem? Und warum machst Du überhaupt Popups, die Deine Besucher allenfalls vertreiben?
Cheatah
Hi,
Ich weiß nicht wie ich es verwenden soll...
Bis jetzt starte ich es ja wie gesagt onload. Dazu hatte ich folgenden Code gefunden:
<script language="JavaScript">
<!--
var fenster;
function popup()
{
fenster = window.open (
"",
"NeuesFenster",
+"toolbar=0"
+",location=0"
+",directories=0"
+",status=0"
+",menubar=0"
+",scrollbars=0"
+",resizable=0"
+",width=330"
+",height=330"
);
fenster.moveTo(
200,
100
);
fenster.location.href = "popup.html";
}
//-->
</script>
Wo ist jetzt hier Platz für: setTimeout("Fenster.focus()",40);
MfG MDDM
Hi,
Ich weiß nicht wie ich es verwenden soll...
warum nicht? Was fehlt Dir an den Beschreibungen in SelfHTML?
Bis jetzt starte ich es ja wie gesagt onload.
Das ist im Prinzip auch weiterhin das richtige Ereignis.
Dazu hatte ich folgenden Code gefunden:
Oh, das ist schlecht. Mach Deinen Code lieber selbst - bei "gefundenem" Code hast Du meistens Schrott vor Dir.
<script language="JavaScript">
ERROR: Required attribute "type" missing.
Wie ich schon sagte.
function popup()
{
fenster = window.open (
Stilfehler bei der Klammersetzung.
"",
Muss(!) eine URL sein.
"NeuesFenster",
+"toolbar=0"
Syntaktisch falsch.
fenster.moveTo(
*Sehr* grober Usability-Fehler.
200,
100
);
Zudem äußerst unübersichtlicher Code.
fenster.location.href = "popup.html";
Völlig sinnfrei.
Wo ist jetzt hier Platz für: setTimeout("Fenster.focus()",40);
"Hier"? Gar nicht. Zudem hat dieser Code drei Elemente, die, soweit ich es sehe, alle drei geändert werden sollten.
Cheatah
Hallo,
setTimeout("fkt()",Zeit_in_ms);
ruft die Routine "fkt" mit einer Verzögerung von "Zeit_in_ms" Millisekunden auf. Du musst also einfach das, was hinter "onload=" steht, an die Stelle von "fkt" schreiben und das ganze dann hinter "onload=" setzen.
Siehe auch:
http://selfhtml.teamone.de/javascript/objekte/window.htm#set_timeout
http://selfhtml.teamone.de/javascript/sprache/eventhandler.htm#onload
Gruß, Jürgen
Hi,
window.setTimeout("popup()",5000);
Das nur in die Funktion mit rein und schon kann auch das OnLoad im body-tag wegfallen.
MfG MDDM
Hallo,
wenn du Javascriptbefehle in den <script>-Bereich legst, werden sie sofort ausgeführt, wenn Du sie im <body>-Tag mit onload=... aufrufst, werden sie erst nach dem vollständigen Laden der Seite gestartet, eben "on load". Auch wenn Du 5 sec wartest, muss eine große Seite bei langsamer Internetanbindung noch nicht geladen sein.
Gruß, Jürgen
Hi,
wenn du Javascriptbefehle in den <script>-Bereich legst, werden sie sofort ausgeführt, wenn Du sie im <body>-Tag mit onload=... aufrufst, werden sie erst nach dem vollständigen Laden der Seite gestartet, eben "on load". Auch wenn Du 5 sec wartest, muss eine große Seite bei langsamer Internetanbindung noch nicht geladen sein.
Achso? Von der Seite habe ich es noch nicht gesehen. Aber danke ich werde es in der Zukunft beherzigen.
MfG MDDM
Hi
@ Jürgen: großes Dankeschön an Dich für die Erklärung. Ich weiß jetzt was es bedeutet wie es funktioniert und werde es auch einsetzen.
@ Cheatah: ??? Der Code funktioniert einwandfrei, vielleicht verstehst Du ihn nur nicht, weil er für "dich"
unübersichtlich ist. :-)
sicherlich geht er auch einfacher zu schreiben, aber da ich kein Javascript-crack bin wie Ihr muß ich auf fertige Codefragmente zurückgreifen, die ich mir dann noch anpasse.
MfG MDDM
Hi,
@ Cheatah: ??? Der Code funktioniert einwandfrei, vielleicht verstehst Du ihn nur nicht, weil er für "dich"
unübersichtlich ist. :-)
ich verstehe nicht nur den Code sehr gut, sondern habe auch erkannt, dass er *nicht* funktioniert, außer vielleicht in einigen wenigen Testfällen, die Du beachtet hast. Ich habe Dir die Fehler und Probleme des Codes aufgezeigt.
sicherlich geht er auch einfacher zu schreiben, aber da ich kein Javascript-crack bin wie Ihr muß ich auf fertige Codefragmente zurückgreifen, die ich mir dann noch anpasse.
Du schaffst Dir Probleme.
Cheatah
Hi,
Ich habe Dir die Fehler und Probleme des Codes aufgezeigt.
Danke dir dafür nochmal, obwohl ich als anfänger keinen Fehler sehe wenns funktioniert. ;-)
MfG MDDM
Hi,
Danke dir dafür nochmal, obwohl ich als anfänger keinen Fehler sehe wenns funktioniert. ;-)
Grundregel: "Es funktioniert" sagt exakt gar nichts aus.
Cheatah
Hallo Cheatah!
Grundregel: "Es funktioniert" sagt exakt gar nichts aus.
Daher sage ich immer: "Es läuft!" und führe den Stuhltanz aus.
Viele Grüße aus Frankfurt/Main,
Patrick
Hi,
Grundregel: "Es funktioniert" sagt exakt gar nichts aus.
Daher sage ich immer: "Es läuft!" und führe den Stuhltanz aus.
verstehe ich Dich richtig: Wenn Dein Bein plötzlich ganz warm wird, dann umschreibst Du diesen Umstand diplomatisch und begibst Dich auf schnellstem Wege zu Abort?
Cheatah ;-)
Hallo Cheatah!
verstehe ich Dich richtig: Wenn Dein Bein plötzlich ganz warm wird, dann umschreibst Du diesen Umstand diplomatisch und begibst Dich auf schnellstem Wege zu Abort?
So in etwa. Liegt daran, dass ich Verstopfung kriege, wenn es nicht läuft, denn ich bleibe so lange vor der Kiste, bis es läuft...
Viele Grüße aus Frankfurt/Main,
Patrick