2012-08-24 29 views
6

में असीमित रूप से लोड की गई स्क्रिप्ट को लोड करना समाप्त हो गया है या नहीं, यह जांचने के लिए कैसे करें कि जावास्क्रिप्ट का उपयोग एक और जावास्क्रिप्ट फ़ाइल को अतुल्यकालिक रूप से डाउनलोड करने के लिए करें।जावास्क्रिप्ट

मैं समझता हूं कि यह पृष्ठ पर एक नया स्क्रिप्ट टैग डालने से src विशेषता फ़ाइल यूआरएल पर सेट किया जा सकता है।

स्क्रिप्ट समाप्त होने पर मुझे कुछ कोड चलाने की भी आवश्यकता है। मैं इसके लिए yepnope का उपयोग कर रहा हूं और वे "कॉलबैक" प्रदान करते हैं जो स्क्रिप्ट समाप्त होने और निष्पादित होने पर निष्पादित होते हैं।

यह कैसे पूरा किया जाता है?

धन्यवाद!

उत्तर

3

अधिकांश जे एस लोडर डोम के लिए एक <script> टैग इंजेक्शन लगाने के लिए, और अपने प्रदान की कार्य करने के लिए अपने onload घटना बंधन के माध्यम से यह करते हैं।

yepnope एक ही दृष्टिकोण का उपयोग करता है, और आप बस इसे देख सकते हैं कि source code से। समारोह injectJs, doc.createElement का उपयोग कर किसी DOM तत्व बनाता सेट src और अन्य आवश्यक setAttribute का उपयोग कर गुण है, बशर्ते कॉलबैक करने onreadystatechange & onload घटना बांधता है, और अंत में दस्तावेज़ में तत्व सम्मिलित करता है।

3

yepnope.injectJs(scriptSource [, callback ] [, elemAttributes ] [, timeout ]); सीधे their website से बाहर: आप बस उस कॉल को चलाते हैं जिसकी आपको सफल कॉलबैक में आवश्यकता है।

// Example 
yepnope.injectJs("jquery.js", function() { 
    console.log("It is finished loading and I can do whatever I need to here"); 
}, { charset: "utf-8" }, 5000); 
+0

आपकी प्रतिक्रिया के लिए धन्यवाद। समस्या यह है कि मैं इसके लिए Yepnope का उपयोग नहीं कर सकता। –

+0

@ChrisDutrow तो आप इस प्रश्न को 'Yepnope' टैग के साथ क्यों टैग करेंगे? – jessegavin

+0

@jessegavin - मैंने इस तरह से टैग किया क्योंकि मैंने प्रश्न में Yepnope का उल्लेख किया था। –

1

इस jQuery का उपयोग किया जा सकता है, यू के लिए इसका इस्तेमाल करना चाहते हैं, Jquery.getScript()

चेकआउट लिंक यह इसके बारे में विस्तार से जानकारी देता है।

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