जब तक HTML लोड करना समाप्त नहीं करता, तब तक स्क्रिप्ट का कोई वास्तविक उपयोग नहीं होता है - HTML लोड होने तक कोई स्क्रिप्ट DOM को बदल नहीं सकती है। document.ready
डोम के लोड होने का इंतजार करता है। इसलिए, स्टाइलशीट जैसी महत्वपूर्ण चीजों को रखने का कोई मतलब नहीं है।
</body>
अपने HTML और CSS को उपयोगकर्ता को जितनी जल्दी हो सके पाने के लिए पृष्ठ के नीचे ( टैग से पहले ) स्क्रिप्ट रखें । ब्राउज़र पेज को बहुत जल्दी रेंडर करने में सक्षम होगा और फिर स्क्रिप्ट को लोड किया जा सकता है, बजाय इसके कि उपयोगकर्ता को डाउनलोड करने के लिए स्क्रिप्ट्स का इंतजार करने के लिए खाली पेज छोड़ दें।
जबकि ब्राउज़र उत्तरोत्तर पृष्ठ को रेंडर कर रहा है, अगर यह एक स्क्रिप्ट टैग (यानी एक बाहरी जावास्क्रिप्ट फ़ाइल) को हिट करता है तो सब कुछ बंद हो जाता है । लिपियों के पास अधिकार है - जब कोई स्क्रिप्ट डाउनलोड हो रही है, तो ब्राउज़र कोई अन्य डाउनलोड शुरू नहीं करेगा। यानी छवियाँ और स्टाइलशीट और किसी भी अन्य समानांतर डाउनलोड को अवरुद्ध किया जाएगा, यहां तक कि विभिन्न होस्टनामों पर भी।
पेज के निचले भाग में स्क्रिप्ट लगाने का नुकसान यह है कि क्योंकि स्क्रिप्ट शुरू होने से पहले पेज रेंडर करेगा, विशेष रूप से क्विक क्लिकर्स जावास्क्रिप्ट तैयार होने से पहले आपकी साइट के साथ बातचीत करने में सक्षम होंगे।
नोट: विपरीत स्टाइल्सशीट्स के लिए सच है - पेज ब्लॉक के निचले हिस्से के पास स्टाइल्सशीट प्रगतिशील प्रतिपादन प्रदान करता है जब तक कि सभी स्टाइलशीट्स को डाउनलोड नहीं किया गया है और उन्हें दस्तावेज़ में ले जाने HEAD
से समस्या समाप्त हो जाती है।
उपयोगकर्ता को प्रतीक्षा किए बिना जावास्क्रिप्ट लोड करने के लिए एक साफ चाल है, आप <script/>
DOM createElement()
विधि का उपयोग करके एक तत्व बना सकते हैं और समापन </body>
टैग से ठीक पहले इसे पृष्ठ पर जोड़ सकते हैं :
var oScript = document.createElement("script");
oScript.src = "/path/to/my.js";
document.body.appendChild(oScript);
ब्राउज़र तब तक js स्क्रिप्ट डाउनलोड करना शुरू नहीं करता है जब तक कि नया <script/>
तत्व वास्तव में पृष्ठ पर नहीं जोड़ा जाता है। एक बार डाउनलोड पूरा होने के बाद, ब्राउज़र जावास्क्रिप्ट कोड की व्याख्या करता है जो भीतर निहित होता है।