bueno vampira, falta de confianza he....
yo lo haría de una forma algo diferente, pero  tu código como punto de inicio.
Primero defino la variable e JS antes que llenarla...  
Código:
 <script language="Javascript">
var afotos = new Array();
</script>
ahora si, la llenamos...
   Código PHP:
    <? 
require ("conexion.php"); 
 
            $sql = "SELECT ImagenEm FROM timagenes WHERE CveEmpre = 1" ; 
                         
                         
            $result = mysql_query($sql); 
            //Se determina un contador inicializado en cero 
            $contador= 0; 
            //con la instrucción mysql_num_rows sabemos cuantos registros hay en las tablas de acuerdo al query 
            $registros= mysql_num_rows($result); 
            //mysql_data_seek($result, 0); 
                //se realiza la condición mientras el contador sea menor que los registros que existen se va a ejecutar 
            while ($contador < $registros) 
                { 
                 
?> 
<div align="center"> 
            <? 
            $datos = mysql_fetch_object($result); 
            $rutaImagen = $datos -> ImagenEm; 
//QUE ES $IP???
            $imagen = $ip.$rutaImagen; 
            echo $imagen;              
            ?> 
<script language="Javascript">
afotos[<?php echo $contador; ?>] = <?php echo $datos->imagenEm; ?>
</script>
 
<a id="imagen" name="imagen" href="javascript:afoto('<? echo $imagen; ?>','450','350')"><img width="150" height="150" src="<?php echo $imagen; ?>"></a>    
   </div> 
 
<?  $contador++;  }?> ?>   
  bueno, espero no haber cometido algun pequeño error por ahi.... aunque sería mas eficiente llenar completamente primero el array en un solo script de Java, sin tener que abrir y cerrar las etiquetas de <script cada vez... 
saludos :)