Si tienes una base de datos con el nombre de la imagen, algo asi podria servir:
Pero en realidad nada que ver javascript
Código PHP:
Ver original<?
$pagina_actual=$_GET["page"]; //PAGINA ACTUAL
if(!$pagina_actual) $pagina_actual=1; //CUANDO ARRANCA EN EL ARCHIVO SIN ENVIAR URL SE POSICIONA PRIMERA PAGINA
$imagenes_por_pagina=20; //IMAGENES POR PAGINA
// CONEXION BASE DATOS
// SUPONIENDO QUE EN LA BASE TENGA EL NOMBRE DEL ARCHIVO Y ALGUNA DESCRIPCION COMO:
// campo_archivo campo_descripcion
// foto001.jpg Foto en la playa
// foto002.jpg Foto familia
$consulta="SELECT campo_archivo FROM tablafotos";
$paginas=intval($total_imagenes/$imagenes_por_pagina); //CALCULO TOTAL DE PAGINAS MENOS LA ULTIMA SI HAY RESIDUO $numero_imagenes_ultima_pagina=$total_imagenes%$imagenes_por_pagina; //TOTAL FOTOS ULTIMA PAGINA
if($numero_imagenes_ultima_pagina>0) $sumar_uno=1; // SI HAY UNA ULTIMA PAGINA CON FOTOS (MAYOR A CERO Y MENOR A $imagenes_por_pagina) SUMO UNO A LA PAGINACION
// PAGINACION, DEMARCO LA PAGINA EN QUE ESTA CON TEXTO MAS GRANDE
print "pagina:<hr>";
for($i=1;$i<=$paginas+$sumar_uno;$i++){
if($pagina_actual==$i)
print "$espacio<span style=\"font-size:24px\">$i</span>";
else
print "$espacio<a href=\"?page=$i\">$i</a>";
$espacio=" - ";
}
print "<hr>";
// OBTENGO NUMERO DE REGISTRO DE ACUERDO A LA PAGINACION DONDE COMIENZO BUSQUEDA
$paginacion_actual=$imagenes_por_pagina*($pagina_actual-1);
$consulta="SELECT campo_archivo,campo_descripcion FROM tablafotos ORDER BY campo_archivo LIMIT $paginacion_actual,$imagenes_por_pagina";
$imagen=$row["campo_archivo"]
$descripcion=$row["campo_descripcion"]
$num++;
print "<img src=\"$imagen\" width=\"20\" height=\"20\">$num) $descripcion<br>";
}
// DESCONEXION BASE DATOS
?>