Preloaden werkt niet in FF?
Bij het preloaden van plaatjes werkt dit wel in IE, maar niet in FF. Het punt is namelijk dat ik niet wil dat de bezoeker ziet dat de afbeelding wordt 'opgebouwd'. Ik wil een preloadertje laten zien en zodra de afbeelding volledig is geladen, de afbeelding in één keer neerzetten. De code die ik daarvoor heb ik als volgt:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
var picPath = "afbeeldingen/";
var picPics = new Array;
picPics[0] = new Array("dd.jpg", 3264, 2448);
picPics[1] = new Array("titel.jpg", 280, 266);
picPics[3] = new Array("Met afbeelding.jpg.jpg", 900, 1350);
picPics[4] = new Array("Artikel met afbeelding.gif", 152, 98);
var myPics = preloadImages(picPath, picPics);
function preloadImages(path, pics) {
var images = new Array;
for (var picNum=0; picNum<pics.length; picNum++)
{
images[picNum] = new Image( pics[picNum][1], pics[picNum][2] );
images[picNum].src = ( path + pics[picNum][0] );
}
return (images);
}
var picPics = new Array;
picPics[0] = new Array("dd.jpg", 3264, 2448);
picPics[1] = new Array("titel.jpg", 280, 266);
picPics[3] = new Array("Met afbeelding.jpg.jpg", 900, 1350);
picPics[4] = new Array("Artikel met afbeelding.gif", 152, 98);
var myPics = preloadImages(picPath, picPics);
function preloadImages(path, pics) {
var images = new Array;
for (var picNum=0; picNum<pics.length; picNum++)
{
images[picNum] = new Image( pics[picNum][1], pics[picNum][2] );
images[picNum].src = ( path + pics[picNum][0] );
}
return (images);
}
Ik roep de plaatjes nu normaal aan (<img src="afbeeldingen/afbeelding.jpg"/>) Alleen zoals eerder gezegd, werkt dit wel in IE maar niet in FF. In FF zie ik dat de plaatjes nog steeds gewoon worden opgebouwd..
Ik hoop dat mijn probleem een beetje duidelijk is en jullie mij kunnen helpen :)
- Martijn
Wat kan je wel doen?
Een voorbeeld: bij fotopagina's kan je de volgende foto al laden (image met width 0 bv.) terwijl je de huidige foto bekijkt. Wanneeer je op de volgende foto klikt, zakl die foto al geladen zijn en zal de violgende foto laden.
Het feit dat firefox de pagina al toont terwijl er nog dingen aan het laden zijn, daar kan je op zich weinig aan doen.
Dan heb je namelijk geen 2 verschillende plaatjes voor een mouseover maar 1 plaatje. Hoef je ook niks te preloaden.
Gewijzigd op 01/01/1970 01:00:00 door Martijn B
Inderdaad voor de achtergrond afbeelding met behulp van css kun je het beste sprites gebruiken. Ook minder http-requests en dus minder laadtijd voor je pagina.