Avatar billede dennism Nybegynder
18. november 2004 - 09:32 Der er 8 kommentarer og
1 løsning

JavaScript: Krævende script

Jeg har et script, som ved nogle inputs kan være langitd tid om at køre.
Jeg tænkte så, om man evt. kunne lave et eller andet i starten af JavaScript hvor der kommer et vindue frem hvor der står "Vent venligst", og når scrippet så er færdig med at køre, så lukker den selv vinduet igen. Er det muligt?
Avatar billede dennism Nybegynder
18. november 2004 - 09:44 #1
Jeg har lavet:

loadingwindow=window.open('loading.html','Loading','toolbar=no,status=no,width=300,height=50');

Og dette lukker jeg så til sidst.
Men mit problem er, at den ikke når at hente loading.html til vinduet inden den begynder at arbejde på scrippet, og derfor indholdet af loading.html ikke til at stå i vinduet mens den henter.

Hvad kan jeg gøre?
Avatar billede thomas_yde Nybegynder
18. november 2004 - 10:59 #2
Du kan evt. hente et billede af et lyskryds, ja et lyskryds.
Der har farven rød. så kan du jo vise rødt lyskryds mens den arbejder.
evt med.
function langfunction(){
inProgress(true);
  //gør en masse
inProgress(false);

}
function inProgress(boo){
  if(boo){
    document.getElementById("working").style.display = "block";
  }
  else{
    document.getELementById("working").style.display = "none";
  }
}
<div id="working" style="display:none;"><img src="lyskryds.gif"></div>

Eller noget i den stil :)
Avatar billede olebole Juniormester
18. november 2004 - 11:46 #3
<ole>

Du kan også prøve at se denne her ... upload et - gerne stort - billede (det bliver slettet med det samme):
  http://tjenester.dk/x-codes.dk/eksperten/anim_upload/

Progress-baren er blot en trans-gif, der bliver skiftet med en anim-gif, når formen submittes mod en iframe:
  onsubmit="document.getElementById('bar').src='bar.gif'"

Når upload'en er færdig i iframe'en, kommer et kald der nedefra, som ser sådan ud:
  parent.getElementById("bar").src = "t.gif";
Så loades den transparente gif igen  :)

/mvh
</bole>
Avatar billede olebole Juniormester
18. november 2004 - 11:48 #4
Ehhhh .... den sidste bør se sådan ud, selvfølgelig:
  parent.document.getElementById("bar").src = "t.gif";
Avatar billede dennism Nybegynder
18. november 2004 - 15:26 #5
Må jeg låne dit "bar.gif" billede?
Avatar billede dennism Nybegynder
18. november 2004 - 19:40 #6
Jeg har nu:
    blok2.style.display="block"
    blok1.style.display="none"
    document.getElementById('blok2').innerHTML =("Vent venligst..");

Mit problem nu, er at den ikke når at skrive denne værdi til blok2, inden at browseren "går ned" forde den regner - selvom at dette først kommer bagefter. Hvad kan jeg gøre, for at den først kører det krævende script når denne er printet?
Avatar billede thomas_yde Nybegynder
19. november 2004 - 09:24 #7
Prøv at komme med noget mere af din kode..
Avatar billede dennism Nybegynder
20. november 2004 - 14:24 #8
olebole >>

smider du lige et svar?
Avatar billede dennism Nybegynder
11. december 2004 - 16:21 #9
.lukker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester