• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Funktion ersetzt nicht das DIV sondern komplette Seite

SirRodney

New member
Hallo zusammen,

ich bin Javascript Anfänger und habe folgendes Problem:
Ich versuche mit countdown.js von countdown flip clock timer einen Timer zu starten der über ein Formular befüllt wird. Das funktioniert soweit auch schon gut, aber leider ersetzt der Counter nicht mein DIV sonder die komplette Seite. Was mache ich falsch?. Hier mein Beispielcode:

HTML:
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Countdown Example</title>
</head>
<body style="background-color:#EDEDED">


<form name="Zeit" id="Zeit1" action="" onSubmit="return uebergabe();">
<label for="zeit">zeit</label> 
        <input type="text" id="zeit" maxlength="30">
        <button type="reset">Eingaben zurücksetzen</button>
</form>		
<input type="button" name="derButton" value="Starten" onclick="myButton();">
<div id="demo">
Dummy DIV
</div>

<script>
	function myButton () {
	zeit = document.getElementById("zeit").value;
	document.getElementById("demo").innerHTML = new Countdown({time: zeit});
	}
</script>
<p>Example</p>

<script src="http://www.gieson.com/Library/projects/utilities/countdown/countdown.js" type="text/javascript"></script>
</body>
</html>

Danke und viele Grüße
Sir Rodney
 
Zuletzt bearbeitet von einem Moderator:
Hi,

gibt "new Countdown" denn überhaupt HTML zurück? Ich denke, dass das einfach ein Konstruktor Aufruf ist und das es kein HTML zurück gibt.
 
Wenn ich new countdown direkt beim Laden der Seite aufrufe gehts. Hast du eine Idee wie ich das Problem lösen kann?
 
Wenn ich "var new countdown..." direkt beim Laden der Seite ausführe funktioniert es wie gewünscht.
Hast du eine Idee was ich ändern muss oder ob überhaupt geht was ich will? Gibt es gegebenen Falls einen Counter das eher geeignet ist?
 
Dieser Countdown ist schlecht geschrieben und für deine Anforderungen nicht geeignet, da er die Struktur des Counters per document.write() erstellt. Du musst dich also nach was anderem umsehen.

Zu document.write:
http://www.w3.org/html/wg/drafts/html/CR/webappapis.html#dynamic-markup-insertion schrieb:
This method has very idiosyncratic behavior. In some cases, this method can affect the state of the HTML parser while the parser is running, resulting in a DOM that does not correspond to the source of the document (e.g. if the string written is the string "<plaintext>" or "<!--"). In other cases, the call can clear the current page first, as if document.open( ) had been called. In yet more cases, the method is simply ignored, or throws an exception. To make matters worse, the exact behavior of this method can in some cases be dependent on network latency, which can lead to failures that are very hard to debug. For all these reasons, use of this method is strongly discouraged.
 
Zurück
Oben