2012-10-25 8 views
17

शरीर के अंदर div के अंदर एक स्क्रिप्ट टैग होने के बारे में क्या बुरा है?क्या div के अंदर स्क्रिप्ट टैग खराब है?

मैं एक div के अंदर एक जावास्क्रिप्ट कोड को पुनः लोड करने के लिए गतिशील रूप से एक div अद्यतन कर रहा हूं। क्या चिंता करने के लिए कोई समस्या है?


संपादित

रूप @Bergi कोड देखकर पर जोर दिया। यहां यह है (नीचे देखें)। यह div (अन्य div (एस) जिसमें प्रस्तुति HTML तत्व शामिल हैं) AJAX के माध्यम से अपडेट किए गए हैं। scriptdiv के अंदर कच्चे डेटा वाले पृष्ठ पर नए लोड किए गए HTML तत्वों की प्रसंस्करण करने के लिए नक्शे शामिल हैं।

 <div> 
      <script type="text/javascript"> 
       var namesMap = <dynamic string from server here>; 
       var addressesMap = <dynamic string from server here>; 
      </script> 
     </div> 
+0

आप ऐसा क्यों करना चाहते हैं? यदि आप div को लोड होने के ठीक बाद यह स्क्रिप्ट चलाने के लिए चाहते हैं, तो आप इसे अपने लोड ईवेंट से जोड़ सकते हैं। यदि आप गतिशील रूप से div को अद्यतन कर रहे हैं (जो बताता है कि डीओएम पहले ही लोड हो चुका है), लिपि में लिपि को डालने के समान प्रभाव पड़ता है, इस स्थिति में इसे शरीर में जोड़ना अच्छा होता है। –

+0

"* एक जावास्क्रिप्ट कोड पुनः लोड करने के लिए एक div को अपडेट करना *" खराब अभ्यास की तरह लगता है, हाँ। आम तौर पर, शरीर में टैग

26

दस्तावेज़ के शरीर में कहीं भी <script> टैग को रखना ठीक है।

here से,

स्क्रिप्ट तत्व एक दस्तावेज़ के भीतर एक स्क्रिप्ट देता है। यह तत्व एचटीएमएल दस्तावेज़ के हेड या बॉडी में कई बार प्रदर्शित हो सकता है।

हालांकि, जब भी <script> टैग होता है, तो यह कोड की पार्सिंग को तब तक रोक देता है जब तक स्क्रिप्ट लोड नहीं हो जाती है, और निष्पादित किया जाता है।

1

इसके बारे में बहुत बुरा नहीं है। अधिकांश विजेट इस तरह से काम करते हैं। यह अभी भी वैध एचटीएमएल है।

यदि आप अपने पृष्ठ में एक ऐडसेंस इकाई एम्बेड करना चाहते हैं, तो आपको इसे करने की आवश्यकता होगी। अमेज़ॅन विजेट्स के साथ ही वही। इसका मतलब है कि अधिकांश वेबसाइटों में div के अंदर एक स्क्रिप्ट टैग है।

2

<head></head> में <script></script> टैग डालने का प्रयास करना हमेशा एक अच्छा अभ्यास था। हालांकि, हाल ही में तर्क दिखाई देते हैं कि <body></body> टैग के अंत में एक टैग डालने से पहले, पृष्ठ को और तेज़ बनाने से पहले।

मैं आपके एचटीएमएल दस्तावेज़ के <head></head> अनुभाग में अपने <script></script> डाल करने की सलाह दूंगा, क्योंकि यह अधिक पसंद है। इसके अतिरिक्त, एक डीआईवी अंदर डालना एक अच्छा अभ्यास नहीं है।

आप अपने दस्तावेज़ की संरचना को व्यवस्थित करने के लिए एक बेहतर उत्तर के लिए अपना उदाहरण पोस्ट कर सकते हैं।

समेकित करने के लिए, आप जो भी कर रहे हैं उसमें कोई समस्या नहीं है। लेकिन एक और संगठित तरीका है जो मैं सुझाता हूं।

+0

आपको '<' के साथ टैग से बचने की आवश्यकता होगी या उन्हें कोड स्निपेट के रूप में बैकटिक्स ('\' ') से घिरा होगा – Bergi

0

एससीआरआईपीटी द्वारा <DIV> के अंदर अभी भी काम कर रहा है। लेकिन कुछ आपके लेआउट के साथ परेशान हैं - स्क्रॉल करते समय शेकिंग। सर्वश्रेष्ठ समाधान: <body> या <head> के अंदर स्क्रिप्ट डालें: डी

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