गतिशील रूप से उन्नयन / प्रोटोटाइप पुस्तकालय की जगह

वोट
1

मैं सर्वेक्षण निमंत्रण है कि कई साइटों में एम्बेड किया जा सकता विकासशील कर रहा हूँ। निमंत्रण मैं उपयोग कर रहा हूँ पेश करने के लिए Modalbox , एक जावास्क्रिप्ट पुस्तकालय है कि एक अर्द्ध पारदर्शी ओवरले के ऊपर एक एनिमेटेड मोडल बॉक्स को दर्शाता है।

यह Modalbox पुस्तकालय प्रोटोटाइप और script.aculo.us/effects लाइब्रेरी पर निर्भर करती। निमंत्रण गतिशील साइटों कि मेरा अधिकार नहीं है और स्थिर उनके मार्कअप संशोधित नहीं कर सकते में एम्बेडेड हो जाएगा।

लोड समय मैं (जे एस में) की जाँच करता है, तो प्रोटोटाइप की तरह भरी हुई है:

if (typeof Prototype == undefined) {
    document.write('<script type=text/javascript src=http://mysite.com/lib/prototype.js><\/script>');
}

if (typeof Effect == undefined) {
    document.write('<script type=text/javascript src=http://mysite.com/lib/scriptaculous.js?load=effects><\/script>');
}

सभी साइटों के बहुमत के साथ अच्छी तरह से काम के बाद से वे आम तौर पर Prototype.js है और न ही script.aculo.us लोड न करें। वहाँ कुछ साइट है जो उन्हें लोड कर रहे हैं और मैं उन्हें लोड करने के लिए नहीं है और इसे फिर से काम करता है।

हालांकि ... वहाँ साइटों कि उन्हें पहले से ही लोड करता है, लेकिन पुराने संस्करणों है जैसे 1.4.0 / 1.5.1 (Modalbox प्रोटोटाइप 1.6.0 और 1.8.0 script.aculo.us की आवश्यकता है)

मैं गतिशील कैसे उतारना / जावास्क्रिप्ट में प्रोटोटाइप और / या script.aculo.us जगह ले सकता है? क्या यह संभव है?

11/06/2009 को 13:17
का स्रोत उपयोगकर्ता
अन्य भाषाओं में...                            


3 जवाब

वोट
2

आप इस तकनीकी रूप से करने में सक्षम हो सकता है, लेकिन आप पेज सिर्फ इतना है कि अपने प्लगइन काम करता है के बाकी को तोड़ने के जोखिम के लिए तैयार हैं? इस तरह के अन्य प्लग इन नए संस्करणों के साथ काम नहीं करते के साथ संगतता के रूप में - वहाँ अच्छा कारण इन साइटों अपग्रेड नहीं किया है हो सकता है। मेरा सुझाव था कि आप या तो उन साइटों को, अपने कोड का उपयोग कम से कम (Prototype.Version का परीक्षण करके) प्रोटोटाइप का संस्करण है या यह भी शामिल है के रूप में आप कर रहे हैं की आवश्यकता होती है, जब यह नहीं मिला है। Scriptaculous साथ भी ऐसा ही।

यह कैसे आगे बढ़ना है सबसे अच्छा पर निर्णय लेने के लिए अपने कोड के उपयोगकर्ता की अनुमति देगा। या तो वे अपने पेज (के बाद से पुराने संस्करण शायद जड़ता की वजह से किया जा रहा है सबसे अधिक संभावना है,) उन्नयन कर सकते हैं या अपने प्लगइन ड्रॉप।

11/06/2009 को 13:35
का स्रोत उपयोगकर्ता

वोट
2

Tvanfosson के जवाब में, यदि आप पता लगा सकते हैं कि कैसे गतिशील रूप से आवश्यक प्रोटोटाइप को अद्यतन करने के लिए है, तो आप भी कुछ ऐसा उपयोग करने में सक्षम होना चाहिए WTFFramework मूल संस्करण का निर्धारण करने के लिए। तो इससे पहले कि आप पॉपअप दिखाने के लिए, अपने प्रोटोटाइप लोड, और जब आप पॉपअप बंद कर दिया है मूल प्रोटोटाइप से लोड करें।

11/06/2009 को 13:43
का स्रोत उपयोगकर्ता

वोट
1

खैर मेरे साथियों में से कुछ सुझाव उन्हें "__mySite" के साथ लगाकर से मेरी (1.6.0) उदाहरण के लिए प्रोटोटाइप में "नेमस्पेसिंग" काम करता है। हालांकि कि रिफैक्टरिंग बहुत काम मतलब के बाद से मैं भी नाम बदलकर कार्यों के लिए कॉल को अपडेट करना होगा होगा।

11/06/2009 को 14:07
का स्रोत उपयोगकर्ता

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more