Avatar billede taub Nybegynder
24. maj 2005 - 08:54 Der er 7 kommentarer og
1 løsning

Animeret gif og javascript på <body>

Hej,

Jeg har et animeret gif-billede, som ikke vil animere når jeg har følgende på body:

<body onload="BeginPageLoad()" onunload="EndPageLoad()">

Mit billede:

<img src="../Images/loadingbar.gif" width="150" height="25" alt="">

Fjerner jeg onload og onunload fra body, så animerer det.

Hvad gør jeg?
Avatar billede milandt Nybegynder
24. maj 2005 - 09:28 #1
Hvad sker der i funktionerne BeginPageLoad() og EndPageLoad() ?
Avatar billede taub Nybegynder
24. maj 2005 - 09:35 #2
Det er en preloader-ting...

<script language="javascript">   
            var iLoopCounter = 1;
            var iMaxLoop = 5;
            var iIntervalId;
           
            function BeginPageLoad() {
                var intStartIndex = location.href.indexOf("page=") +5;
                var strReturnUrl = location.href.substring(intStartIndex, location.href.length)
               
                location.href = strReturnUrl;
               
                iIntervalId = window.setInterval("iLoopCounter=UpdateProgress(iLoopCounter, iMaxLoop)", 500);
            }
       
            function EndPageLoad() {
                window.clearInterval(iIntervalId);
                Progress.innerText = "Siden er hentet";
            }
       
            function UpdateProgress(iCurrentLoopCounter, iMaximumLoops) {
           
                iCurrentLoopCounter += 1;
               
                if (iCurrentLoopCounter <= iMaximumLoops) {
                    Progress.innerText += ".";
                    return iCurrentLoopCounter;
                }
                else {
                    Progress.innerText = "";
                    return 1;
                }
            }
        </script>
Avatar billede milandt Nybegynder
24. maj 2005 - 09:40 #3
har du siden live et sted? er der nogen javascript fejl?
Avatar billede taub Nybegynder
24. maj 2005 - 09:59 #4
Nej, scriptet virker upåklageligt - Ingen fejl.
Det er lige så snart jeg smider en gif ind på siden, så bliver den i frame 1.

Jeg har prøvet i både IE og Firefox.
Avatar billede milandt Nybegynder
24. maj 2005 - 10:31 #5
har du det live et sted.. vil gerne se scriptet implementeret.
Avatar billede olebole Juniormester
24. maj 2005 - 16:56 #6
<ole>

taub >> Det _kan_ simpelthen ikke passe. Det script fungerer ikke en dyt i Mozilla, men vil udløse flere JS-fejl.
Men hvorfor i øvrigt have en ekstra 'progressbar' på siden? Hvad er det nu lige scriptet gør, som browserens progressbar ikke gør?  :)

/mvh
</bole>
Avatar billede taub Nybegynder
25. maj 2005 - 08:44 #7
milandt:

Jeg vil lige forsøge at strikke et live-eksempel sammen...
Jeg kan ikke bare smide det nuværende ud, da det er et lukket system.


olebole:

Arh, du har ret. Jeg syntes ellers jeg havde kigget. My bad.

Men anyway, gif-billedet har ikke noget med javascriptet at gøre. Overhovedet.

Jeg sidder med nogle massive db-udtræk, og ventetiden er for ulidelig - Derfor skal jeg bruge noget som giver brugeren indtryk af det der arbejds på sagen, og at vedkommende ikke skal skride.
Browserens progressbar er ikke nok.
Avatar billede taub Nybegynder
25. maj 2005 - 14:37 #8
Nå, det ser ud til jeg har fået det til at virke...

Hvis jeg via javascriptet ændrer på mit element som holder billedet, så animerer det...
Fx: document.getElementById('Progress').style.width = "150px";

Fatter ikke hvorfor...
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