Możesz ustawić setInterval na 1 sekundę i cyklicznie sprawdzać, która jest godzina. Możesz też z każdym requestem po stronę policzyć na serwerze, ile czasu zostało do określonej godziny i ustawić w tagu <meta> atrybut http-equiv="refresh" z różnicą czasową w sekundach - wtedy przeglądarka powinna sama przekierować użytkownika o określonym czasie.
A w ogóle, jaki sens ma taki ficzer? Bo to wydaje się dość dziwne, zwłaszcza gdy użytkownik nie będzie o tym poinformowany - może zdarzyć się tak, że ktoś wejdzie na stronę, gdy zostało np. kilka sekund do przekierowania i przekieruje go, gdy będzie w trakcie czytania czegoś.