Avatar billede code_freak Nybegynder
12. oktober 2003 - 03:07 Der er 14 kommentarer og
1 løsning

onload af et billede

Jeg vil gerne undersøge når et billed er loaded... men kan man se det... f.eks med onload... jeg har prøvet
<img src="g.jpg" onload="cat('global');"> men ser ikke ud til at virke...
Avatar billede olebole Juniormester
12. oktober 2003 - 05:52 #1
<ole>

Det virker fint, men kun første gang billedet loader. Hvis du skifter src på det, sker der ingen ting, når det nye billede loader.

/mvh
</bole>
Avatar billede erikjacobsen Ekspert
12. oktober 2003 - 06:03 #2
Hvis du gør det i "ren" javascript, så kan du jo altid:

function test() {
  alert("Så er den der");
}
function test2() {
  alert("Så er den der ikke");
}

im = new Image();
im.onload=test;
im.onerror=test2;
im.src="http://www.sofie.jacobsen.org/sofixe.jpg";
Avatar billede code_freak Nybegynder
12. oktober 2003 - 06:07 #3
tak :)
Avatar billede code_freak Nybegynder
12. oktober 2003 - 06:07 #4
fik lige lavet denne :)
http://docs.cppforum.dk/loading.html
Avatar billede erikjacobsen Ekspert
12. oktober 2003 - 06:12 #5
Den ser da lidt spøjs ud i min Netscape 7.x  ;))
Avatar billede olebole Juniormester
12. oktober 2003 - 06:23 #6
=8-O .... mon ikke!

1. Start dit dokument med en DOC-TYPE. F.eks:
  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
  der skal stå som det _aller_ første i dokumentet.
2. Husk dernæst <html></html> og <body></body> tags
3. Du skriver:
  document.all['loaded']
  Det er proprietær MS-kode. Hvis du vil have alle browsere kan læse det (og det vil du naturligvis), bør du skrive:
  document.getElementById("loaded")

Så skal det nok virke i alle browsere ... og så får du både Erik og mig til at slå vores små gigtsvage forben mod hinanden og kagle af fryd  :)
/mvh
Avatar billede olebole Juniormester
12. oktober 2003 - 06:30 #7
PS: Det kan godt være, du må ændre lidt i din styles, når du har sat DOC-TYPE'en ind. Det er fordi, ingen browser ved hvilket sprog (og version), der er skrevet i, hvis den ikke er der.

Det er også vigtigt, den er korrekt - dvs, at URL'en (http://www.w3.org/TR/html4/loose.dtd) er med, da IE ikke kan finde ud af at tolke CSS korrekt, hvis ikke den er med.

Uden den korrekte DOC-TYPE er det med andre ord temmelig tilfældigt, hvordan en browser viser en side. En alt for ofte overset - men yderst vigtig - detalje  ;o)
/mvh
Avatar billede erikjacobsen Ekspert
12. oktober 2003 - 06:41 #8
Du kan jo lige starte med at udskifte .all, som gamle Ole siger.

Så vidt jeg læser din kode står der et "nummer" på hvert billede, og
når billede "nummer" 13 er loadet, så siger du, at du er færdig.
Hvad nu hvis billede "nummer" 7 er længe om at blive hentet? Så
siger den at den er færdig før tiden. Hvad nu hvis der er fejl i
billede "nummer" 13, så bliver den aldrig færdig....

Du skal derimod bare tælle hver gang der kommer en onload og en onerror.
Hver gang er du kommet et skridt nærmere, og når alle er talt sammen
til 13 er du færdig - uanset der er billeder der mangler.
Avatar billede code_freak Nybegynder
12. oktober 2003 - 06:43 #9
okay.. vil rette det imorgen.... har nogen større sprøgsmål også... men vil spørge om dem imorgen :)

glæmte lige at skrive mange tak for den store hjælp :)
Avatar billede code_freak Nybegynder
12. oktober 2003 - 06:45 #10
okay... takker igen :)
Avatar billede erikjacobsen Ekspert
12. oktober 2003 - 06:49 #11
Avatar billede erikjacobsen Ekspert
12. oktober 2003 - 06:49 #12
Lettere gjort enD sagt:
Avatar billede code_freak Nybegynder
28. oktober 2003 - 17:42 #13
point
Avatar billede code_freak Nybegynder
27. december 2003 - 23:51 #14
luk
Avatar billede code_freak Nybegynder
27. december 2003 - 23:51 #15
luk
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