21. maj 2003 - 15:41
Der er
14 kommentarer og 1 løsning
Indlæsning af billeder i bestemt rækkefølge
Jeg har en hjemmeside med en animation øverst og tre billeder nederst. Jeg vil gerne have at de tre billeder bliver indlæst/load'et før animationen bliver load'et/kørt. Og løsningen helst HTML eller javascript. Stig
Annonceindlæg fra SuperOffice
en preloader: <script language="javascript" type="text/javascript"> var imgs; imgs[0]=new Image(h,w); imgs[0].src="image1.gif"; imgs[1]=new Image(h,w); imgs[1].src="image2.gif"; imgs[2]=new Image(h,w); imgs[2].src="image3.gif"; </script>
-- og så sætter du dine <img>-tags src med en onload og _bagefter_ det samme med din animation hth jes
Kan du give et eksempel? Inden jeg finder ud af det, er det blevet mørkt...
<script language="javascript" type="text/javascript"> var imgs; imgs[0]=new Image(h,w); //her skal du selvfølgelig indsætte højde og bredde imgs[0].src="image1.gif"; //og her dit filnavn imgs[1]=new Image(h,w); imgs[1].src="image2.gif"; imgs[2]=new Image(h,w); imgs[2].src="image3.gif"; function visBilleder(){ document.images["billede1"].src=imgs[0].src; document.images["billede2"].src=imgs[1].src; document.images["billede3"].src=imgs[2].src; document.images["animation"].src="sti/animationsNavn.gif"; } </script> </head> <body onload="visbilleder();"> <img src="" name="animation" height=200 width=150><!--Til din animation--> <img src="" name="billede1" height=75 width=100><!--Til billede1--> <img src="" name="billede2" height=75 width=100><!--Til billede2--> <img src="" name="billede3" height=75 width=100><!--Til billede3--> </body> -- bemærk, at jeg har scriptet i <head>-tagget -- du kunne også lave det så det kom der hvor billederne skulle være ...
-- og sågar nøjes med function visBilleder(){ document.images["animation"].src="sti/animationsNavn.gif"; } -- og <img src="image1.gif" name="billede1" height=75 width=100> <img src="image2.gif" name="billede2" height=75 width=100> <img src="image3.gif" name="billede3" height=75 width=100> preloaderen skal selvfølgelig være der, for så vil billederne være i browserens cache -- og det skal være *præcis* den samme URL
Jeg kan ikke få det til at virke. Jeg får en fejl når jeg loader siden: Error: 'imgs.5' is null or not an object Du får også lige min kode, måske kan du gennemskue det. Jeg synes jeg har gjort alt hvad du sagde. <STYLE TYPE="text/css"> TABLE { height:20%; text-align:center; } </STYLE> <script language="javascript" type="text/javascript"> var imgs; imgs[0]=new Image(); imgs[0].src="images/logo_on_blue_back.gif"; //min animation imgs[1]=new Image(); imgs[1].src="images/scan_4764&4760a.jpg"; imgs[2]=new Image(); imgs[2].src="images/scan_4757.jpg"; imgs[3]=new Image(); imgs[3].src="images/scan_4765.jpg"; function visBilleder(){ document.images["billede3"].src=imgs[1].src; document.images["billede1"].src=imgs[2].src; document.images["billede2"].src=imgs[3].src; document.images["animation"].src=imgs[0].src; //min animation } </script> </head> <body bgcolor="#000099" onload="visBilleder();" style="margin:0;"> <div style="text-align:center;"> <table width="80%" height="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td> </td> </tr> </table> <table width="80%" height="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td> </td> </tr> </table><table width="80%" height="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td> <img src="" name="animation"> </td> </tr> </table><table width="80%" height="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td> </td> </tr> <table width="240" height="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td width="80"> <img src="" name="billede3"> </td> <td width="80"> <img src="" name="billede1"> </td> <td width="80"> <img src="" name="billede2"> </td> </tr> </table> </div> </body> </html>
arhhh.. istedet for Error: 'imgs.5' is null or not an object skulle der stå Error: 'imgs.1' is null or not an object
Faktisk bliver der slet ikke fremvist noget på skærmen... ligesom når URL'en mangler...
Dvs. den stopper: imgs[0]=new Image(); imgs[0].src="images/logo_on_blue_back.gif"; //min animation imgs[1]=new Image(); imgs[1].src="images/scan_4764&4760a.jpg"; //<--- her stopper den jeg ville lige først teste med et andet billede
Ser din kode præcis sådan ud ?-) Eller er det en vis lige hvad jeg har gjort-udgave Hvis det ser sådan ud, så sæt lige noget tekst ind et eller andet sted og fortæl om det komer frem
Sorry - her kommer den <STYLE TYPE="text/css"> TABLE { height:20%; text-align:center; } </STYLE> <script language="javascript" type="text/javascript"> var imgs; imgs[0]=new Image(); imgs[0].src="images/logo_on_blue_back.gif"; imgs[1]=new Image(); imgs[1].src="images/scan_4764&4760a.jpg"; imgs[2]=new Image(); imgs[2].src="images/scan_4757.jpg"; imgs[3]=new Image(); imgs[3].src="images/scan_4765.jpg"; imgs[4]=new Image(h,w); imgs[4].src="images/scan_4761.jpg"; imgs[5]=new Image(); imgs[5].src="images/scan_4763.jpg"; imgs[6]=new Image(); imgs[6].src="images/scan_4758a&4758.jpg"; function visBilleder(){ document.images["billede5"].src=imgs[1].src; document.images["billede3"].src=imgs[2].src; document.images["billede1"].src=imgs[3].src; document.images["billede2"].src=imgs[4].src; document.images["billede4"].src=imgs[5].src; document.images["billede6"].src=imgs[6].src; document.images["animation"].src=imgs[0].src; } </script> </head> <body bgcolor="#000099" onload="visBilleder();" style="margin:0;"> <div style="text-align:center;"> <table width="80%" height="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td> </td> </tr> </table> <table width="80%" height="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td> </td> </tr> </table><table width="80%" height="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td> <img name="animation"> </td> </tr> </table><table width="80%" height="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td> </td> </tr> <table width="640" height="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td width="160"> <img src="" name="billede5"> </td> <td width="80"> <img src="" name="billede3"> </td> <td width="80"> <img src="" name="billede1"> </td> <td width="80"> <img src="" name="billede2"> </td> <td width="80"> <img src="" name="billede4"> </td> <td width="160"> <img src="" name="billede6"> </td> </tr> </table> </div> </body> </html>
-- jeg havde glemt en detalje :-{ var imgs = new Array();
Det er så funky at det virker-- roenving-> Tak for hjælpen. Husk lige at svare så du kan få nogle point
Vi tilbyder markedets bedste kurser inden for webudvikling