29. september 2001 - 12:37Der er
16 kommentarer og 1 løsning
Loade billede fra et layer
Hej Allesammen
Jeg er ved at bikse en hjemmeside sammen, som bl.a. indeholder nogle thumbnails, der linker til nogle hires billeder. Disse billeder vil jeg gerne have vist i et span ell. div \"ovenpå\" resten af hjemmesiden. Problemet er at hvis jeg bare laver nogle usynlige layers i koden, så skal man jo loade ALLE hires billederne for at komme ind på siden (selvom man ikke kan se dem). Derfor vil jeg gerne kunne loade en html-fil dynamisk ind i et layer. Hvordan gør man det ?
En anden ting, du kunne gøre, var at preloade billederne *efter* siden var loadet, så ville alle billederne blive loadet, og de ville så blive taget fra cachen, når de skulle bruges, sådan noget som:
<script type=text/javascript>
function preload(){ var billeder=new Array(\'billede1.gif\',billede2.gif\');
Det har selvfølgelig den bagdel, at alle dine billeder kommer til at ligge som aktive billeder, så hvis du har mange og store billeder, kan det påvirke performance for siden, men der viste JakobA for nogle dage siden, hvordan man skulle frigive hukommelsen igen.
Selvfølgelig kan det også ske, at brugeren forsøger at få fat i et billede, som endnu ikke er loadet, men risikoen er da så i hvert fald minimeret.
>>nikolajdu onLoad går jo netop først igang, når siden ellers er loadet, så mens brugeren finder rundt, så kan browseren stå og hygge sig med at loade billederne.
Hvis brugeren,, så bevæger sig over til en anden side (ved hjælp af browserens navigations-muligheder) stoppes loadet.
Problemet er selvfølgelig, at anden funktionalitet i siden har et problem, det kunne man klare ved at sætte en timeout op, som ville give plads til anden funktionalitet mellem hvert billede.
Jeg tror problemet med anden performance ville være en hel del værre.
<ole> roenving >> Det er netop ikke et preload-spørgsmål :) Spørgeren vil gerne undgå at skulle have alle billederne liggende i <div>\'s i dokumentet - og det er unødvendigt, hvis han kun har ét div og så loader billederne ind i det. Hvorfor preloade 20 billeder, når brugeren skal vente 20 minutter på at nummer 19 er preloaded. En evt. preload kommer ingen til gode ved så mange hiRes billeder. Så er det bedre at loade dem ind i et div.
En nemmere måde at gøre det på, end den nikolajdu linker til, ville måske være noget à la:
Det er faktisk noget rigtigt skidt. Jeg lagde mig kl 18.30 for lige at sove en times tid, så jeg kunne komme ud og få en enkelt med drengene. Kl. 2.30 vågnede med et sæt og var lysvågen. Lidt skidt for min nattesøvn, men godt for evt. tastefejl.
Jamen, det kan uden tvivl være til stor inspiration - for ikke at sige fryd - for den ganske dansk-, engelsk- og JavaScript-lærerstab. Ikke desto mindre føler jeg mig overbevist om, at det pågældende svar, du har copy/pasted fra, ikke lød helt som dette :)
Jeg ved godt det er i Flash, men brugen er identisk.
Synes godt om
Ny brugerNybegynder
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.