Javascript: while-Schleife "nebenbei" ausführen
lima-city → Forum → Die eigene Homepage → HTML, CSS & Javascript
ablauf
anfang
antwort
art
browser
code
dank
ende
frage
funktion
guter tipp
krieg
lade
mache
machen
pause
schleife
sekunde
starten
warte
-
Hallo,
ich habe folgenden Javascript-Quelltext für eine Audiowiedergabe:
var a = new Audio("./a.ogg"); //Lade a.ogg in a als Audio
function playstop() { //Zusammen mit anderem Code a starten und am schluss wieder zusammen mit anderem Code beenden
a.Play(); //a starten
//Mache irgendwas am Anfang
while (a.currentTime < a.duration) {} //Warte bis a durchgelaufen ist
a.Pause(); //Stoppe a
//Mache irgendwas am Ende
}
Klar, der Browser hängt sich auf, bis a zu Ende ist. Wie kriege ich das anders hin?
In VB.NET gibt es ja Application.DoEvents(), gibt es etwas in der Art auch für JavaScript?
Oder gibt es eine ganz andere Möglichkeit?
Danke,
momar-blog
Beitrag zuletzt geändert: 24.6.2011 20:45:14 von momar-blog -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Danke für die Antwort, in der while-Shleife macht er nichts, und nichts macht er so lange bis a vorbei ist. Die while-Schleife ist leer.
Mit dem Interval war ein guter Tipp, ich habe dass dann so gemacht, funktioniert jetzt wunderbar:
var a = new Audio("./a.ogg"); //Lade a.ogg in a als Audio
function play() {
a.play(); //a starten
window.setTimeout("exita();", a.duration * 1000); //Nach Ablauf der Tondauer exita() ausführen
}
function exita() {
//Mache irgendwas am Ende
}
Beitrag zuletzt geändert: 24.6.2011 20:59:06 von momar-blog -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage