Hola otra vez:
 
Tengo un poco gripado mi servidor, así que no puedo subir las últimas modificaciones, con una precarga selectiva un poco mejorada, el código es:  
 Código PHP:
    <html>
<head>
<style type="text/css" >
td    {
    text-align    : center;
    valign        : middle;
}
.flechaActiva    {
    border             : 2px outset;
    background-color    : #eeeeee;
    color            : black;
}
.flechaInActiva    {
    border             : 2px dashed;
    background-color    : #eeeeee;
    color            : #fefefe;
}
</style>
<script>
var dibujos, _dibujos;
var nFilas = 5;
var nColumnas = 11;
var actual, siguientes;
var botones = ["arr", "der", "aba", "izq"];
 
function calcularSiguientes(actual)    {
    var _siguientes = "";
 
    for (var i = 0; i < botones.length; i ++)
        document.getElementById(botones[i]).className = "flechaInActiva";
 
    if (actual > (nColumnas - 1)) _siguientes += "arr=" + (actual - nColumnas);
    if ((actual % nColumnas) < (nColumnas - 1)) _siguientes +=
        (_siguientes == "") ? "der=" + (actual + 1):
        ",der=" + (actual + 1);
    if (actual < ((nFilas - 1) * (nColumnas)))
        _siguientes += (_siguientes == "") ?
        "aba=" + (actual + nColumnas):
        ",aba=" + (actual + nColumnas);
    if ((actual % nColumnas) > 0) _siguientes += ",izq=" + (actual - 1);
    return _siguientes;
}
 
function precargar(dibus)    {
    arrayDibus = dibus.split(",");
    var nuevaPrecarga = "precargar('";
    var siguientesDibujos = ""
    for (var i = 0; i < arrayDibus.length; i ++)    {
        sitio = parseInt(arrayDibus[i].split("=")[1]);
        if (dibujos[sitio].imagen.complete)
            with (document.getElementById(arrayDibus[i].split("=")[0]))
                className = "flechaActiva";
        else    siguientesDibujos += (siguientesDibujos == "") ?
                arrayDibus[i] : "," + arrayDibus[i];
    }
    if (siguientesDibujos != "")    {
        var nuevaPrecarga = "precargar('" + siguientes + "')";
        setTimeout(nuevaPrecarga, 100);
 
    }
}
 
function subir()    {
        actual -= nColumnas;
        document.images.centro.src = dibujos[actual].imagen.src;
 
        siguientes = calcularSiguientes(actual);
        dibujos = sumarPrecarga(siguientes, dibujos);
        precargar(siguientes);
}
 
function bajar()    {
 
        actual += nColumnas;
        document.images.centro.src = dibujos[actual].imagen.src;
 
        siguientes = calcularSiguientes(actual);
        dibujos = sumarPrecarga(siguientes, dibujos);
        precargar(siguientes);
}
 
function izq()    {
        actual -= 1;
        document.images.centro.src = dibujos[actual].imagen.src;
 
        siguientes = calcularSiguientes(actual);
        dibujos = sumarPrecarga(siguientes, dibujos);
        precargar(siguientes);
}
 
function der()    {
        actual += 1;
        document.images.centro.src = dibujos[actual].imagen.src;
 
        siguientes = calcularSiguientes(actual);
        dibujos = sumarPrecarga(siguientes, dibujos);
        precargar(siguientes);
}
 
function precargaSelectiva()    {
    this.imagen = new Image();
}
 
function sumarPrecarga(elementos, dibujos)    {
    var desglose = elementos.split(",");
    for (var i = 0; i < desglose.length; i ++)    {
        j = parseInt(desglose[i].split("=")[1]);
        dibujos[j].imagen.src = _dibujos[j];
    }
    return dibujos;
}
 
function nuevaPrecarga(n)    {
    var imagenes = new Array(n);
    for (var i = 0; i < imagenes.length; i ++)
        imagenes[i] = new precargaSelectiva();
    return imagenes;
}
 
function ini()    {
    _dibujos = new Array(
            'http://webs.ono.com/usr028/turiscan/images/a1.jpg',
            'http://webs.ono.com/usr028/turiscan/images/a2.jpg',
            'http://webs.ono.com/usr028/turiscan/images/a3.jpg',
            'http://webs.ono.com/usr028/turiscan/images/a4.jpg',
            'http://webs.ono.com/usr028/turiscan/images/a5.jpg',
            'http://webs.ono.com/usr028/turiscan/images/a6.jpg',
            'http://webs.ono.com/usr028/turiscan/images/a7.jpg',
            'http://webs.ono.com/usr028/turiscan/images/a8.jpg',
            'http://webs.ono.com/usr028/turiscan/images/a9.jpg',
            'http://webs.ono.com/usr028/turiscan/images/a10.jpg',
            'http://webs.ono.com/usr028/turiscan/images/a11.jpg',
 
            'http://webs.ono.com/usr028/turiscan/images/b1.jpg',
            'http://webs.ono.com/usr028/turiscan/images/b2.jpg',
            'http://webs.ono.com/usr028/turiscan/images/b3.jpg',
            'http://webs.ono.com/usr028/turiscan/images/b4.jpg',
            'http://webs.ono.com/usr028/turiscan/images/b5.jpg',
            'http://webs.ono.com/usr028/turiscan/images/b6.jpg',
            'http://webs.ono.com/usr028/turiscan/images/b7.jpg',
            'http://webs.ono.com/usr028/turiscan/images/b8.jpg',
            'http://webs.ono.com/usr028/turiscan/images/b9.jpg',
            'http://webs.ono.com/usr028/turiscan/images/b10.jpg',
            'http://webs.ono.com/usr028/turiscan/images/b11.jpg',
 
            'http://webs.ono.com/usr028/turiscan/images/c1.jpg',
            'http://webs.ono.com/usr028/turiscan/images/c2.jpg',
            'http://webs.ono.com/usr028/turiscan/images/c3.jpg',
            'http://webs.ono.com/usr028/turiscan/images/c4.jpg',
            'http://webs.ono.com/usr028/turiscan/images/c5.jpg',
            'http://webs.ono.com/usr028/turiscan/images/c6.jpg',
            'http://webs.ono.com/usr028/turiscan/images/c7.jpg',
            'http://webs.ono.com/usr028/turiscan/images/c8.jpg',
            'http://webs.ono.com/usr028/turiscan/images/c9.jpg',
            'http://webs.ono.com/usr028/turiscan/images/c10.jpg',
            'http://webs.ono.com/usr028/turiscan/images/c11.jpg',
 
            'http://webs.ono.com/usr028/turiscan/images/d1.jpg',
            'http://webs.ono.com/usr028/turiscan/images/d2.jpg',
            'http://webs.ono.com/usr028/turiscan/images/d3.jpg',
            'http://webs.ono.com/usr028/turiscan/images/d4.jpg',
            'http://webs.ono.com/usr028/turiscan/images/d5.jpg',
            'http://webs.ono.com/usr028/turiscan/images/d6.jpg',
            'http://webs.ono.com/usr028/turiscan/images/d7.jpg',
            'http://webs.ono.com/usr028/turiscan/images/d8.jpg',
            'http://webs.ono.com/usr028/turiscan/images/d9.jpg',
            'http://webs.ono.com/usr028/turiscan/images/d10.jpg',
            'http://webs.ono.com/usr028/turiscan/images/d11.jpg',
 
            'http://webs.ono.com/usr028/turiscan/images/e1.jpg',
            'http://webs.ono.com/usr028/turiscan/images/e2.jpg',
            'http://webs.ono.com/usr028/turiscan/images/e3.jpg',
            'http://webs.ono.com/usr028/turiscan/images/e4.jpg',
            'http://webs.ono.com/usr028/turiscan/images/e5.jpg',
            'http://webs.ono.com/usr028/turiscan/images/e6.jpg',
            'http://webs.ono.com/usr028/turiscan/images/e7.jpg',
            'http://webs.ono.com/usr028/turiscan/images/e8.jpg',
            'http://webs.ono.com/usr028/turiscan/images/e9.jpg',
            'http://webs.ono.com/usr028/turiscan/images/e10.jpg',
            'http://webs.ono.com/usr028/turiscan/images/e11.jpg'
 
);
    actual = parseInt(location.search.split("=")[1]);
    if ((actual).toString() != "NaN")    {
        document.images.centro.src = _dibujos[actual];
        dibujos = nuevaPrecarga(_dibujos.length);
        siguientes = calcularSiguientes(actual);
        dibujos = sumarPrecarga(siguientes, dibujos);
        precargar(siguientes);
    }
}
 
</script>
</head>
<body onload="ini()" style="margin: 0;">
 
<table border=1 >
    <tr>
        <td> </td>
        <td id="arr" class="flechaInActiva" onclick="if (this.className == 'flechaActiva') subir()"> ↑ </td>
        <td> </td>
    </tr>
 
    <tr>
        <td id="izq" class="flechaInActiva" onclick="if (this.className == 'flechaActiva') izq()" > ← </td>
        <td >
            <div style="width: 469px; height: 469px; overflow: hidden;">
                <img name="centro" src="" />
            </div>
        </td>
        <td id="der" class="flechaInActiva" onclick="if (this.className == 'flechaActiva') der()" > → </td>
    </tr>
 
    <tr>
        <td> </td>
        <td id="aba" class="flechaInActiva" onclick="if (this.className == 'flechaActiva') bajar()" >↓ </td>
        <td> </td>
    </tr>
</table>
 
</body>
</html> 
   
  En cuanto se le baje la fiebre a mi servidor, subo la página para que la veas. 
Saludos