Yaklaşık 1 aydır üzerinde uğraştığım bir web projesinde, bolca css, W3C uyumlu xhtml kodlar ve yine bolca javascript kodları kullanıyorum. Haliyle bu kadar bol javascript kullanmam nedeniyle sayfanın açılış süresinin uzamasına neden oldu. Nasıl bu gecikmeyi engellerim diye düşünürken, aklıma bir çözüm geldi ama ne kadar mantıklı bir çözüm olup olmadığı konusunda tereddüte düştüm.
Bulduğum çözüm ise, external .js dosyalarının bir kısmını head tagları içinde değil de, form tagının kapanmasından hemen önce tanımlamak.
Peki head tagı içine koymamanın dezavantajları neler olabilirdi?
İlk olarak aklıma gelen body nin altında tanımladğımda yine sorunsuz çalışıp çalışmayacağıydı, hemen denedim ve sorun çıkmadı, zaten sayfanın load anında otomatik olarak çalışan bir js dosyası değildi zaten, tetitlenerek çalışıyordu.
İkinci olarak, acaba head tagında koymayınca yine bu .js dosyaları cachelenecek mi sorusu oldu. Hemen Firebug'ı açıp deneme yaptım ve head tagında bulunmayan .js dosyasını da cachelediğini farkettim.
Sonuç olarak tüm .js dosyalarınızı head tagında tanımlamanıza gerek yok, sayfa açılırken normalden daha uzun bir süre ziyaretçiye beyaz ekran göstermektense, biran önce ziyaretçiye sayfa içeriğini göstermenize olanak sağlamış olacaksınız.
İyi kodlamalar..