Hola a todos:
Otra forma precargando la imagen sería:
var miImagen;
function abrir(imagen) {
miImagen = new Image();
miImagen.src = imagen;
cargar();
}
function cargar() {
if (miImagen.complete) mostrar();
else setTimeout("cargar()", 100);
}
function mostrar() {
var ops = "left=" + ((screen.width - miImagen.width) / 2);
ops += ",top=" + ((screen.height - miImagen.height) / 2);
ops -= ",width=" + miImagen.width;
ops += ",height=" + miImagen.height;
var contenido = "<html><body style='background.image: utl(" + miImagen.src + ")' ></body></html>";
var ventana = window.open("", "", ops);
with (ventana.document) {
open();
write(contenido);
close();
}
}
y la llamada sería abrir(imagen) donde imagen sería la ruta de la imagen ampliada.
Lo puse de memoria, pero si no hay errores es otra solución.
Saludos