2011-11-22 15 views
5

मैं एक फ्लैश फ़ाइल विकसित कर रहा हूं जो कि उन दर्जनों वेबसाइटों पर अपलोड किया जाएगा जिन पर मेरा कोई नियंत्रण नहीं है। मुझे पता चला कि उनमें से एक एसएफएफ gzipping लगता है, जो शून्य होने के लिए loaderInfo.bytesTotal पैदा कर रहा है। यह लोडिंग एनीमेशन को खराब करता है।क्या करना है जब loaderInfo.bytesTotal शून्य

मैंने bytesTotal शून्य होने पर केवल परीक्षण के कामकाज की कोशिश की, यदि ऐसा है तो बस आगे बढ़ें। यह काम नहीं करता है, जैसा कि अपेक्षित है, सभी आवश्यक डेटा अभी तक लोड नहीं हुए हैं। वैकल्पिक रूप से मैं जो भी अपेक्षित लोड समय है, उसमें एक देरी देरी डाल सकता हूं, और आशा करता हूं कि यह सभी अड्डों को कवर करे।

क्या किसी के पास कोई अन्य सुझाव है? आदर्श रूप से bytesTotal को परिभाषित करने का एक वैकल्पिक तरीका है, लेकिन मुझे एक नहीं मिला है।

FYI करें यह कुछ हद तक इस प्रश्न से संबंधित है: Why loaderInfo.bytesTotal is Zero

लेकिन क्योंकि मैं अन्य वेबसाइटों, जिनमें से कुछ खिड़कियों सर्वर पर वैसे भी हो सकता है पर नियंत्रण की जरूरत नहीं है मैं इनको सुझाव नहीं कर सकते।

उत्तर

0

यदि यह संभव है तो आप कुल बाइट्स गड़बड़ flashvars पास कर सकते हैं या फ़ाइल में कहीं भी storred है। यदि आप लॉड करने के लिए फ़ाइलों को परिभाषित करने के लिए कुछ स्क्रिप्ट का उपयोग करते हैं तो आप आकार भी बना सकते हैं और इसे फ्लैश करने के लिए पास कर सकते हैं ताकि अगर कुलबाय 0 हो तो ईवेंट आप किसी अन्य तरीके से दिए गए आकार के आधार पर प्रगति की गणना कर सकते हैं।

यही समस्या है जिसे मैं इस समस्या के लिए जानता हूं।

+0

धन्यवाद जैकब, ऐसा लगता है कि पूरी तरह से काम किया है, मैं बाइट्स में गुजर रहा हूं फ्लैशवार का उपयोग करके कुल मूल्य। मैंने शुरुआत में केवल फ्लैशवार संस्करण का उपयोग करने की कोशिश की, अगर loaderInfo.bytesTotal 0 था, हालांकि यह पता चला है कि फ़ायरफ़ॉक्स पर यह 0 नहीं था, लेकिन यह सही नहीं था, यह सही मूल्य से काफी छोटा था। तो अब मैंने इसे दो के उच्चतम मूल्य (loaderInfo.bytesTotal बनाम flashvar बाइट्सटॉट) का उपयोग करने के लिए सेट किया है। –

+0

आपका स्वागत है, यदि आप चाहते हैं कि एक महान लोडर [लोडरमैक्स] (http://www.greensock.com/loadermax/) का उपयोग करने का प्रयास करें। वास्तव में लागू की गई अधिकांश सामग्री के साथ वास्तव में महान पुस्तकालय। यही वह जगह है जहां मैंने पाया कि tehnique। –

0

आप अपना दृष्टिकोण बदलने पर विचार करना चाहेंगे ताकि आपकी फिल्म बढ़ती जा सके। यदि आप अपनी प्रतीकों की परिभाषाओं में "फ्रेम 1 पर निर्यात" अनचेक करते हैं, तो सबकुछ लोड होगा जहां इसे पहले उपयोग/संदर्भित किया जाता है। ध्यान दें कि यह केवल तभी काम करेगा यदि आपने आईडीई का उपयोग करके फ्लैश को अपने अधिकांश ऑब्जेक्ट्स को मंच पर रखने की अनुमति दी है। इस दृष्टिकोण के बारे में और जानने के लिए, http://www.developria.com/2010/04/combining-the-timeline-with-oo.html देखें। लेख के लिए कोड http://flexdiary.blogspot.com/2010/04/sample-code-for-oop-timeline-insideria.html

+0

धन्यवाद एमी जो एक दिलचस्प तकनीक की तरह दिखता है। लेकिन इसमें कुछ बड़े बदलावों की आवश्यकता होगी, इसलिए मैं @ JakubSłaby द्वारा सुझाए गए विचार के साथ गया –

0

समस्या यह है कि Google क्रोम फ़्लैश प्लेयर के अपने संस्करण का उपयोग कर रहा है। यदि आप इसे क्रोम सेटिंग्स में अक्षम करते हैं तो बाइट्सटॉटल ठीक होगा। लेकिन आप निश्चित रूप से इसे अक्षम करने के लिए सभी को नहीं बता सकते हैं।

मुझे समाधान मिला कि जब आप प्रत्येक स्थिति में पूरी लोडिंग पूरी हो जाती हैं तो आप कैसे पता लगा सकते हैं। आप यह उत्तर देख सकते हैं: Why loaderInfo.bytesTotal is Zero

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