2010-02-10 19 views
8

document.write('<scr' + 'ipt src= जैसे लिखे गए जब आप जेएस वैरिएबल को स्क्रिप्ट टैग में डालने की अनुमति देने के अलावा सामान्य <script src=> टैग बनाम इस के पेशेवर/विपक्ष क्या हैं?document.write ('<scr' + 'ipt src = vs <script src =

मैं मुख्य रूप से गति के संबंध में है, लेकिन पूरी कहानी में रुचि के साथ पूछ रहा हूँ।

धन्यवाद डेनिस

+0

से बातें समानांतर लोड करने के लिए शुरुआत कर रहे हैं मैं किसी भी सवाल –

+0

नहीं दिख रहा है Stackoverflow करता है: 'document.write ('<रों' + 'लैंग cript' + 'uage = "jav' + 'ascript" src = "http: //ads.stackoverflow.com/a.aspx?' – Skilldrick

+0

क्या यह प्रश्न मदद करता है? http://stackoverflow.com/questions/236073/why-split -the-script-tag-when-writing-it-with-document-write- –

उत्तर

2

मुझे लगता है इस गैर अवरुद्ध जावास्क्रिप्ट लोड हो रहा है हासिल करने के लिए है।

इसके लिए मैं इस विषय के बारे में स्टीव सॉउडर पदों को देखने का सुझाव देता हूं। http://www.stevesouders.com/blog/2009/04/27/loading-scripts-without-blocking/

एलएबीजेएस लाइब्रेरी इसे एक सुंदर निफ्टी तरीके से हल करती है। http://labjs.com/

भी ऐसा लगता है नए ब्राउज़रों डिफ़ॉल्ट http://www.stevesouders.com/blog/2010/02/07/browser-script-loading-roundup/

0

उन लोगों की तुलना अन्य? कोई नहीं हैं।

(संयोग से, बंटवारे एक एक में स्क्रिप्ट टैग समेकित तारों की एक जोड़ी में जेएस स्ट्रिंग व्यर्थ ब्लोट है)

9

'<scr'+'ipt' की कोई आवश्यकता नहीं है। '<\/scr'+'ipt>' की आवश्यकता है। चूंकि HTML दुभाषिया को जावास्क्रिप्ट को समझने की कोई आवश्यकता नहीं है, इसलिए यह पाठ के रूप में <script>...</script> के बीच सबकुछ का इलाज करेगा, और var a='</script>'; परवाह नहीं करेगा एक स्ट्रिंग शाब्दिक जावास्क्रिप्ट है, यह <script> के लिए समापन टैग पर विचार करेगा और शेष स्क्रिप्ट टेक्स्ट का सम्मान करेगा सादा (गलत) HTML के रूप में।

संपादित करें: डेविड के सुझाव के अनुसार सुधारा

+4

और यह भी गलत है। यह होना चाहिए: '<\/script>" चूंकि एचटीएमएल पार्सर्स (कम से कम जो एचटीएमएल को सही तरीके से कार्यान्वित करते हैं, यानी अधिकांश वेब ब्राउज़र नहीं) ' Quentin

+3

'" <\/script> "' नहीं '"<\/scr" + "ipt>" '। उत्तरार्द्ध निर्बाध, अक्षम, ब्लोट पढ़ने के लिए मुश्किल है। – Quentin

संबंधित मुद्दे