var Geschwindigkeit
Sandie
- javascript
0 Jörg Peschke0 wahsaga
Ich bins nochmal... ;-)
schon wieder tauchte eine neue Frage auf. Hier ist einmal der Script:
<title>Laufschrift</title>
</head>
<body bgcolor="#FFFFF" onload="StatusLauftext(); return true">
<p><script language="JavaScript">
<!--
var Text = "Hallo und Herzlich Willkommen";
var Geschwindigkeit = 0;
var Breite = 100;
var TextLaenge = Text.substring;
var Position = 1 - Breite;
function StatusLauftext()
{
Position++;
var Textzustand="";
if (Position == TextLaenge)
{
Position = 1 - Breite;
}
if (Position < 0)
{
for (var Zaehler = 1; Zaehler <=Math.abs(Position); Zaehler++)
{Textzustand = Textzustand + " ";
}
Textzustand = Textzustand +
Text.substring (0,Breite-Zaehler + 1);
} else {
Textzustand = Textzustand +
Text.substring(Position,Breite+Position); }
window.status = Textzustand;
setTimeout ("StatusLauftext()", 100);
}
//-->
</script></p></body></html>
Angegeben ist oben var Geschwindigkeit mit 0. Was genau bedeutet das, denn unten steht ja noch einmal: setTimeout ("StatusLauftext()", 100);
Ich denke das die Angabe 100 hier die Geschwindigkeit angibt. Jedenfalls verändert sich diese wenn ich die Zahl ändere. Was bedeutet aber dann var Geschwindigkeit=0??
Danke schön
Gruß Sandie
Moin,
Ich denke das die Angabe 100 hier die Geschwindigkeit angibt. Jedenfalls verändert sich diese wenn ich die Zahl ändere. Was bedeutet aber dann var Geschwindigkeit=0??
Korrekt, 100 gibt die Wartezeit in Milisekunden an, bevor "StatusLauftext" erneut aufgerufen wird und steuert damit indirekt die Geschwindigkeit.
Die Variable "geschwindigkeit" wird deklariert, aber nicht benützt und ist deshalb zweckfrei.
Viele Grüße von Jörg, der ein "WARNING: Unused variable 'Geschwindigkeit' in line xy" auch in JavaScript fordert :)
Hallo Jörg,
Viele Grüße von Jörg, der ein "WARNING: Unused variable 'Geschwindigkeit' in line xy" auch in JavaScript fordert :)
[X] Unbedingt dafür!
So long,
Martin
Hallo Jörg,
Korrekt, 100 gibt die Wartezeit in Milisekunden an, bevor "StatusLauftext" erneut aufgerufen wird und steuert damit indirekt die Geschwindigkeit.
wobei ich das Intervall als etwas zu hoch gesetzt empfinde. Von Lauftext kann bei einem Abstand von 100 Millisekunden jedenfalls keine Rede mehr sein. Das ist eher ein Zappeltext.
Beim Fernsehen hat man hierzulande 25p, also 25 Frames pro Sekunde oder ein Intervall von 40 Millisekunden. Beim Film hat man eine Framerate von 24p, entsprechend einem Intervall von 42 Millisekunden. In Flashfilmen hat man üblicherweise 12 Frames pro Sekunde entsprechend einem Intervall von 83 Millisekunden. Spätestens alles, was darüber liegt wird vom Auge nicht mehr als geschlossene Bewegung sondern als Abfolge von Einzelbildern wahrgenommen.
Die Variable "geschwindigkeit" wird deklariert, aber nicht benützt und ist deshalb zweckfrei.
Wenn es nicht um die Manipulation einer Statusanzeige geht, die ohnehin in kaum noch einem Browser funktioniert, sondern um normale Animationen im Fenster selbst, so kann ich nur raten, die Framerate, so wie man das vom Fernsehen und Film gewöhnt ist, konsequent zwischen 40 und 42 Millisekunden einzustellen und bei Bedarf eine höhere Geschwindigkeit nur mit einem höheren Pixelversatz zu erzielenoder umgekehrt eine geringere Geschwindigkeit mit einem geringen Pixelversatz pro Intervall.
Alles andere führt entweder zu Qualitätseinbußen der Animation beim Empfinden durch das menschliche Auge oder zu unnötig hoher Rechnerbelastung, die das menschliche Auge ohnehin nicht als flüssigere Bewegung wahrnehmen kann.
Gruß Gernot
hi,
Angegeben ist oben var Geschwindigkeit mit 0. Was genau bedeutet das,
Dass einer Variablen Geschwindigkeit der Wert 0 zugewiesen wird.
Ansonsten gar nichts, denn sie wird ja im restlichen Script überhaupt nicht mehr verwendet.
denn unten steht ja noch einmal: setTimeout ("StatusLauftext()", 100);
Ich denke das die Angabe 100 hier die Geschwindigkeit angibt.
Sowas kannst du auch gut selber in SELFHTML nachlesen, wenn dir etwas unklar ist.
gruß,
wahsaga