Hola Morgui:
Eso pasa cuando la imagen no se ha cargado...
Lo mejor es chequear el atributo complete de la imagen y cuando esté true recién consultar las dimensiones.
function chequeo() {
if (foto2.complete) {
if (foto2.width != 460 || foto2.height != 280)
document.location ='error.asp?op=tamf';
}
else setTimeout("chequeo()", 100);
}
function cambia(foto){
if (document.forms[0].elements['FILE1'].value != "") {
foto2 = new Image();
foto2.src = 'file:///' + foto;
document.foto.src='file:///' + foto;
chequeo();
}
}
Bueno, el chequeo está con foto2, pero si no está definido globalmente, deberías chequear "document.foto.complete"
Saludos