Archief - JS: Preloaden werkt niet

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Jellepunk

Legacy Member
Hallo, ik heb voor het eerst zelf een javascript geschreven en ik heb opgezocht hoe je moet preloaden. (met een array)
welja, ik dit gedaan en die functie wordt uitgevoerd bij mijn media pagina (body onload="maakFotoArray();")
Als ik dit online bekijk werkt het niet. of toch niet zoals ik verwacht hoe het zou werken. Ik zou ook graag een laad percentage weergeven of een bericht dat de foto's aan het laden zijn, maar hoe ik daaraan moet beginnen weet ik totaal niet, ik heb gegoogled maar niets nuttigs tegengekomen
hier heb je mijn code
PHP:
/**
* By Jelle Victoor
* Alle Foto's moeten van het formaat zijn naam_fotonummer.extentie
**/

var fotoNr;
var DIM = 152; // hier vul je het aantal foto's in
var LOC = "images/photo/org/st_";
var LOC_THUMB = "images/photo/thumbs/thumb_st_";// hier vul je de locatie in met de prefix van je foto's
var EXT = ".jpg"; // hier geef je de extentie op voor je foto's
var thumbArray = new Array(DIM); // in deze Array worden alle thumbObjecten opgeslagen
var fotoArray = new Array(DIM);// in deze Array worden alle fotoObjecten opgeslagen
var atlFoto;

// Pop-up, gebruikt voor gastenboek
function MM_openBrWindow(theURL,winName,features)
{    
    window.open(theURL,winName,features);
}
// Hiermee wordt de fotobrowser geopend met daarin de foto die geselecteerd werd.

function maakFotoArray()
{
    // preload main images
    for(i = 0; i < DIM; i++)
    {
        fotoArray[i] = new Image()
        fotoArray[i].src = LOC + eval(i+1) + EXT;
    }
    // preload thumbs
    for(i = 0; i < DIM; i++)
    {
        thumbArray[i] = new Image()
        thumbArray[i].src = LOC_THUMB + eval(i+1) + EXT;
    }
    
    atlFoto = eval(fotoArray.length + 1);
}

function toon(fotoNr)
{
    myWin=open("","","width=400,height=450,status=no,toolbar=no,menubar=no");
    myWin.document.open();
    myWin.document.writeln("<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'>");
    myWin.document.writeln("<html xmlns='http://www.w3.org/1999/xhtml'>");
    myWin.document.writeln("<head>");
    myWin.document.writeln("<title>");
    myWin.document.writeln("Foto Browser");
    myWin.document.writeln("</title>");
    myWin.document.writeln("<script type='text/javascript' src='script/script.js'></script>");
    myWin.document.writeln("<link href='style.css' rel='stylesheet' type='text/css' />");
    myWin.document.writeln("</head>");
    myWin.document.writeln("<body onload='maakFotoArray();'>");
    myWin.document.write("<div class='centerf'><img src = '");
    myWin.document.write(fotoArray[eval(fotoNr-1)].src);
    myWin.document.write("' alt='Sample This!' id='foto' /></div>");    
    myWin.document.writeln("<table border='0' width='100%'><tr><td><a href='javascript:prev();'><-- vorige foto</a></td><td align='right'><a href='javascript:next();'>volgende foto --></a></td></tr><tr align='center'><td colspan='2'>");
    myWin.document.write("foto <span id='fotoNr'>");
    myWin.document.write(fotoNr);
    myWin.document.write("</span> van de ");
    myWin.document.write(fotoArray.length);
    myWin.document.write(" Foto's<br/><a href='javascript:window.close();'>sluiten</a>");
    myWin.document.writeln("</body>");
    myWin.document.writeln("</html>");
    myWin.document.close();
    
}

function getFotoNr()
{
    return document.getElementById("fotoNr").firstChild.nodeValue;
}

function veranderFoto(fotoNr)
{
    document.getElementById("foto").src = fotoArray[fotoNr].src;
    document.getElementById("fotoNr").firstChild.nodeValue = eval(fotoNr + 1);
}
function next()
{
    if(getFotoNr()<fotoArray.length)
    {
        veranderFoto(eval(getFotoNr()));
    }
    else
    {
        veranderFoto(0);
    }
}

function prev()
{
    if(getFotoNr()>1)
    {
        veranderFoto(getFotoNr() - 2);
    }
    else
    {
        veranderFoto(eval(fotoArray.length - 1));
    }
    
}[
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan