Hocam ve şeklinde iki ana etiketimiz var. Eğer head ın üzerine js kodlarını yazarsanız js kodları direk çalışır. Siz body içerisindeki herhangi bir şeyi seçerseniz ya da body içerisindeki herahngi bir şey için js kodu yazarsanız javascript kodları head tagının üzerindeyse body etiketini bulamaz.
Head üzerine yazdığınız bir kod dışardan bir şey beklemiyorsa ve body e bir bağımlılığı yoksa sorunsuz çalışacaktır. İlk attığım kod body üzerinden bir şey seçmiyordu. Js nin kendi sunmuş olduğu bir eventi kullanıyordu.
En son attığım kod ise etiketine bağımlıydı. document kodu sayfanın tüm kaynağını getirir. document.body ise bu kaynaktan etiketini seçer.

js kodu etiketinin üzerinde olduğundan kod çalıştığında body etiketi yüklenmemişti. Eğer head içerisinde kullanacaksanız da window.onload olayını kullanıp sayfa tamamen yüklendikten sonra kodu çalıştırmalısınız.

<script>
window.function() {
document.body.function() {
// sizin sekmenizde olduğunda
location.reload();
}
}
</script>

Yukarıdaki kodu tagının hemen üzerine yapıştırırsanız yine istediğiniz şekilde çalışacaktır. Yani kodlar çok hızlı yüklenip çalıştığından her şeyin sırasını ayarlamalısınız. Eğer css kodlarını sayfanın sonuna yazarsanız sayfa düzeni geç oturacaktır. Css verilen classlara özellik kazandırırken js çağırılan şeyleri bulup çalıştırır. İkisinin de mantığı farklı. Her şey yüklenme sırası ile alakalı.

Helal olsun hocam siz de edin her zaman elimden geldiğince yardımcı olurum. Sağlıklı günler dilerim.