Te cuento lo que haría yo:
Como no puedes simular un click en un elemento del documento (
click() sólo funciona en IE) lo que yo haría sería replantear la función cambia() para pasárle por parámetro el id de la imagen que quieres modificar. Así para llamarla tendrás que hacer:
Código HTML:
<img src="star_off.gif" id="Image1" onclick="cambia(this.id)" />
Para detectar las imagenes, y llamar consecuentemente a cambia(id), podemos utilizar una condicional dentro de un bucle. Hacemos crecer una variable i mientras el elemento con id "Image"+i exista, y entonces tendremos los elementos imagenes:
Un esbozo:
Código PHP:
var i=0;
while( (img = document.getElementById("Image"+i)) ) {
cambia(img.id);
i++;
}
De esa manera podemos recorrer todas las imágenes para ejecutar cambia(id).
Otra manera es con DOM, obtener todas las imagenes del documento (o de la tabla o DIV donde tengas las imagenes) y mirar si su id tiene la estructura de "ImageXX". Si la tiene entonces aplicamos cambia(id).... pero quizás sea un poco más costoso en cuestiones de rendimiento.
Bueno, espero que me entiendas.
Un saludo.