Seguramente colocaste el script en la cabecera del documento, antes de que carguen los elementos de la página, y no al final de esta.
Tienes dos opciones; o colocas el script al final:
Código HTML:
Ver original<!DOCTYPE html>
<!-- Aquí irán los elementos de tu documento -->
<script type="text/javascript"> /* Aquí irá el código JavaScript */
O puedes dejar el script en la cabecera, pero deberás de ejecutarlo al haber cargado el DOM:
Código Javascript
:
Ver originaldocument.addEventListener("DOMContentLoaded", function(){
/* Aquí irá el script */
}, false);
¿Cuál es la diferencia?
Con la primera forma, el script cargará cuando haya terminado de cargar el modelo de objetos del documento (DOM, los elementos del documento) y su contenido multimedia (fotos, audio, vídeos, si los hubiera), mientras que con la segunda forma, se ejecutará cuando solo haya terminado de cargar el DOM. Tú decides.
Saludos