Index con javascript, imagenes en moviemiento con objeto matematicas

Muy buenas
Haber si alguien me puede hechar un cable.
Tengo un script para que a determinadas horas se vallan cambiando las imagenes del index de una web para un restaurante.
Y tengo dos dudas.
La primera no se como hacer para que no se repitan las imagenes
la segunda, la imagen de portada es la fachada del restaurante, pero deberia de ser dos link distintos. Para que me entendais una parte para la cefeteria y otra para el restaurante.
Se puede hacer?
Aqui os dejo el sript.
<script language="JavaScript">

function imagen(){
fecha = new Date();

hora = fecha.getHours();

if(hora>=1 && hora<=10){//imagen desde la 1am hasta las 10am
document.getElementById("fondo").style.backgroundImage="url(img/mañana.jpg)";
}

if(hora>=11 && hora<=18){//imagen desde las 11am hasta las 6pm
document.getElementById("fondo").style.backgroundImage="url(img/tarde.jpg)";
}

if(hora>=19 && hora<=24){//imagen desde las 7pm hasta las 12pm
document.getElementById("fondo").style.backgroundImage="url(img/noche.jpg)";
}

}
</script>
Yo no tengo mucha idea de JavaScript, pero voy a buscar a ver si te puedo ayudar ;)

PD: Mejor pon el código entre las etiquetas [ code ] y [/ code] (Sin los espacios de dentro de los corchetes)
Hola, podrías crear un arreglo (array) con las imágenes y en base a un número aleatorio podrías seleccionar el índice del arreglo y mostrar la imágen:

<script language="JavaScript">
  var am = new Array('img1.jpg', 'img2.jpg', 'img3.jpg');
  var pm = new Array('img1.jpg', 'img2.jpg', 'img3.jpg');
  var arreglo7_12 = new Array('imgs...');
  function imagen(){
    fecha = new Date();

    hora = fecha.getHours();

    if(hora>=1 && hora<=10){  //imagen desde la 1am hasta las 10am
      var rndm = Math.floor(Math.random() * am.length); // genera un número al azar entre 0 y el largo del arreglo - 1.
      document.getElementById("fondo").style.backgroundImage="url(" + am[rndm] + ")";
    }

    if(hora>=11 && hora<=1{//imagen desde las 11am hasta las 6pm
      var rndm = Math.floor(Math.random() * pm.length); // genera un número al azar entre 0 y el largo del arreglo - 1.
      document.getElementById("fondo").style.backgroundI mage="url(" + pm[rndm] + ")";
    }

    if(hora>=19 && hora<=24){//imagen desde las 7pm hasta las 12pm
      var rndm = Math.floor(Math.random() * arreglo7_12.length); // genera un número al azar entre 0 y el largo del arreglo - 1.
      document.getElementById("fondo").style.backgroundI mage="url(" + arreglo7_12[rndm] + ")";
    }

  }
</script>

En cuanto a la segundo pregunta: sí se puede. Lo que yo haría sería poner la imágen como el fondo (background) de un div y a este div añadirle dos enlaces (<a></a>) que utilicen la mitad del div cada uno. Quizás no sea la mejor técnica (porque no conozco o no se me ocurre otra XD), pero funciona (o debería).

Saludos :D.