Чтобы совершить действие с элементом, он должен находиться на странице выше чем код, который будет производить действия с этим элементом.
Можно писать JavaScript ниже элемента, а можно использовать функции, чтобы запустить код только после того как страница будет загружена.
Чистый javascript
Код: Выделить всё
window.onload = (function() { // код здесь});
Код: Выделить всё
$(document).ready(function(){ // код здесь});
Код: Выделить всё
$(function(){ // код здесь});