Avatar billede mnv_dk Praktikant
21. juli 2006 - 16:39 Der er 13 kommentarer og
1 løsning

Preload af billeder

Hej...

Jeg har denne menu: http://services.gw1.befree.dk/ll/menu.htm

Hvis du i Internet Explorer har valgt, under cache at den skal kontrollere for nye versioner hver gang siden hentes, vil billederne først loade når man holder musen over, eller har klikket på linket.

Hvordan kan disse preloades.

Jeg har i forvejen denne javascript, funktion, der burde virke, da den loades sammen med siden:

function preload(){
  image1 = new Image();
  image1.src="./_img/knap_active.gif";
  image2 = new Image();
  image2.src="./_img/menu_top.gif";
  image3 = new Image();
  image3.src="./_img/menu_midt.gif";
  image4 = new Image();
  image4.src="./_img/menu_bund.gif";
}
Avatar billede thesurfer Nybegynder
21. juli 2006 - 20:00 #1
Måske kan du generere et tilfældigt tal, og tilføje det til filnavnet..

Sådan:

  random_num = (Math.round((Math.random()*100000)+1))

  image1 = new Image();
  image1.src="./_img/knap_active.gif?" + random_num;
  image2 = new Image();
  image2.src="./_img/menu_top.gif?" + random_num;
  image3 = new Image();
  image3.src="./_img/menu_midt.gif?" + random_num;
  image4 = new Image();
  image4.src="./_img/menu_bund.gif?" + random_num;
Avatar billede thesurfer Nybegynder
21. juli 2006 - 20:05 #2
Forklaring:
Når browseren læser filnavn, er det f.eks. "knap_active.gif?1234". Næste gang er det f.eks. "knap_active.gif?76235". Det opfattes som to forskellige filnavne, og derfor vil den loade filen igen, i stedet for at bruge den i cachen.

Når billederne vises, vises de på normalvis.
Avatar billede mnv_dk Praktikant
22. juli 2006 - 12:46 #3
Hej...

Det er ikke helt korrekt det du siger... Men den forespørger billedet hvergang, det er korrekt, men den tilføjer ikke et tal.

Og det virker ikke...
Avatar billede mnv_dk Praktikant
22. juli 2006 - 13:04 #4
Tror jeg har fundet tricket... Istedte for at gøre det til et link, simulerer man det er et link ved at sætte onmouseover i div'en istedet, med en cursor: pointer; og en onclick... Det ser ud til at virker...

Billederne er stadig ikke preloadet, men de forsvinder ikke ligesom de gjorde før.
Avatar billede thesurfer Nybegynder
23. juli 2006 - 01:37 #5
Hmm.. hvad er det der ikke virker, siger du?

Jeg har lavet en simpel test:

<script type="text/JavaScript">
random_num = (Math.round((Math.random()*100000)+1))
image1 = new Image();
image1.src="./_img/knap_active.gif?" + random_num;
document.write("Filnavnet til image1 er:<br>" + image1.src);
</script>

Det ser ud til at virke fint..
Avatar billede mnv_dk Praktikant
23. juli 2006 - 08:33 #6
Ja det virker fint....

Men det løser ikke problemet, og det er ikke den måde browseren opfører sig på som du bskrev, e kan jeg direkte se i serverens logfiler.
Avatar billede thesurfer Nybegynder
23. juli 2006 - 18:20 #7
Du mener, at der i log filen ikke står, at den requester en fil med f.eks. navnet "./_img/knap_active.gif?1234" ?
Avatar billede mnv_dk Praktikant
23. juli 2006 - 18:50 #8
Well det kan jeg jo direkte se på det request den laver.
Avatar billede thesurfer Nybegynder
24. juli 2006 - 08:02 #9
Hmm.. måske virker det kun med dokument-filer (.asp, .php o.lign.)..

Men jeg er næsten sikker på, at det også virker med billeder..

Har du adgang til ASP eller PHP?
Avatar billede mnv_dk Praktikant
24. juli 2006 - 09:53 #10
Ja, og der kan jeg sige at den heller ikke gør det.

Det er meget muligt at en IIS gør det, men så er det noget den selv gør, og ikke browseren.
Avatar billede roenving Novice
25. juli 2006 - 12:46 #11
Den eneste helt rene løsning jeg har set, var at stakke forskellige elementer ovenpå hinanden, og så ændre på rækkefølgen (og evt. synligheden !-)

-- for ellers vil IE lige undersøge, om der evt. skulle være kommet en nyere udgave af billedet !o]
Avatar billede mnv_dk Praktikant
25. juli 2006 - 12:54 #12
Well, har rodet lidt mere med det nu, og uanset hvad, så når du bringer et elemenmt frem vil den hente alle billederne for elementet igen....
Avatar billede mnv_dk Praktikant
23. oktober 2006 - 09:23 #13
Intet brugbart svar.
Avatar billede roenving Novice
24. oktober 2006 - 22:13 #14
Tak for hjælpen ,-(
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