Wednesday, 15 January 2014

jquery - Preloader Gif-Image Stucks in Mobile Applications -


jQueryMobile में काम कर रहा है ( 1.3.1 ) और फोनगैप ( 2.7.0 < / Strong>) Android और iPhone अनुप्रयोगों के लिए! वर्तमान में प्रीलोडर इमेज से जुड़ी एक समस्या का सामना करना पड़ रहा है। यहां प्रीफेडर के रूप में GIF छवि का उपयोग कर रहा हूं।

प्रीलोडर कार्यक्षमता के लिए कस्टम फ़ंक्शन का उपयोग कर रहा हूं - शो लोड हो रहा है ()

  फ़ंक्शन शोलोडिंग () {$ ("body")। संलग्न ("& lt; div id = 'overlay' & gt; & lt; / div & gt ; & Lt; img src = 'चित्र / लोड हो रहा है gif' id = 'loader_image' / & gt; "); }   

और preloader को छिपाने के लिए किसी अन्य फ़ंक्शन का उपयोग कर रहा है hideLoading

  फ़ंक्शन छुपा लोडिंग () {$ ("# overlay, #loader_image ") को हटाने ()।; }   

तब मेरी समस्या तब होती है जब एक बटन क्लिक बटन की तरह निकाल दिया जाता है, जब एक पृष्ठ से दूसरे स्थान पर जाने की कोशिश कर रहा हूं; प्रीलोडर एनिमेटिंग नहीं है पर ('क्लिक', फ़ंक्शन (ईवेंट) {showLoading (); $ .mobile.changePage ("#mobile_page_form_bookacar", {revers: गलत, परिवर्तन हैश: सच}); event.preventDefault ();});

तो अपने काम के लिए setTimeout फ़ंक्शन () का उपयोग कर रहा हूँ।

और मेरा कोड ऐसा दिखता है; ('क्लिक करें', फ़ंक्शन (ईवेंट) {showLoading (); सेट टाइमआउट (फ़ंक्शन () {$ .mobile.changePage ("#") Mobile_page_form_bookacar ", {reverse: false, changeHash: true}); event.preventDefault ();}, 200);});

अब मेरा प्रीलोडर काम कर रहा है! लेकिन समस्या 200 मीटर के बाद प्रीलोडर इमेज स्टक्स (एनिमेटिंग नहीं) है और इसकी सामान्य जेपीजी छवि जैसी दिखती है अब जब मैं एक बटन पर क्लिक करता हूं, तो मेरा प्रीलोडर उस सटीक 200ms के लिए काम कर रहा है और उसके बाद स्टिक करता है (एनिमेटिंग नहीं) लेकिन अन्य कार्य आसानी से काम कर रहे हैं जैसे पृष्ठ संक्रमण, अगले पृष्ठ सब कुछ के लिए एपीआई कॉल। मैं इस मामले में सटीक मुद्दे क्या हो रहा हूं।

मेरा प्रीलोडर ...  यहाँ छवि विवरण दर्ज करें

200ms के बाद इसकी दिखता है (पृष्ठ बदलने से पहले ..)  यहां छवि विवरण दर्ज करें

मैंने पहले से ही jQuery मोबाइल के साथ चेक किया है 'Preloader लेकिन यह मेरे कस्टम प्रीलोडर की तरह भी रोकता है।

मैं setTimeout फ़ंक्शन का उपयोग करने के कारण आवेदन के प्रदर्शन को प्रभावित करेगा। लेकिन अब मैं preloader काम करने के लिए setTimeout फ़ंक्शन का उपयोग करने के लिए मजबूर किया! मुझे लगता है कि यह छोटी सी समस्या का कारण हो सकता है .. लेकिन मुझे ऐसा क्यों नहीं हुआ, इस वजह से इस मुद्दे को ठीक करने के लिए मैंने अपना बहुमूल्य समय खो दिया है। कृपया मदद करें ..

अगर आप अपना कस्टम लोडिंग चाहते हैं, तो JQM डिफ़ॉल्ट लोडिंग जीआईफ़ को नीचे बदलें .. < / G> अपने gif के नाम के रूप में एक ही नाम का नाम बदलें ajax-loader.gif

फिर, इस शो को कॉल / छुपाएं स्क्रिप्ट लिखें।

  $ (".ui-loader")। शो (); // ... $ (".ui-loader")। Hide ();   

इसे हटाएं, हमेशा वहां रहें, बस दिखाएं और छुपाएं जैसे जेक्यूएम ने किया।

No comments:

Post a Comment