दिलचस्प पोस्ट
विज्ञापनप्रणाली और पहचानकर्ता फ़ोरेन्डर वापसी "00000000-0000-0000-0000-000000000000" दृश्य स्टूडियो सी ++ 2010 में पीडीबी फ़ाइल को ढूंढ या खोल नहीं सकता क्या PARTIAL_STATE_SAVING को गलत पर सेट किया जाना चाहिए? NSDateComponents वाक्यविन्यास में अंतर? जावास्क्रिप्ट के साथ <audio> src बदलें Angularjs के $ http का उपयोग करते समय प्रतिक्रिया शीर्षकों को पढ़ना पर्ल स्क्रिप्ट में से मैं पर्ल स्क्रिप्ट कैसे चलाऊँ? क्या मुझे JSLint या JSHint जावास्क्रिप्ट सत्यापन का उपयोग करना चाहिए? कैसे नुकीले में एक सरणी में जगह बढ़ाने के लिए? संग्रहित प्रक्रिया का उपयोग करके बल्क डालें विभिन्न रूपों के माध्यम से asp.net MVC 4 एकाधिक पोस्ट प्रोग्राम को एक लेआउट में बटन जोड़ें करीब सौ अंक के लिए एक पूर्णांक कैसे गोल करना है? Tkinter में एक छवि प्रदर्शित नहीं कर सकते NullPointerException: println को Android में एक संदेश की आवश्यकता है

क्या सभी समय बहिष्कृत करने का कोई तरीका है?

क्या एक खिड़की से सभी समय बहिष्कृत करने का एक तरीका है? मुझे लगता है कि समय समाशोधन कहीं window ऑब्जेक्ट में संग्रहीत है लेकिन पुष्टि नहीं कर सका।

कोई भी क्रॉस ब्राउज़र समाधान का स्वागत है

Solutions Collecting From Web of "क्या सभी समय बहिष्कृत करने का कोई तरीका है?"

वे विंडो ऑब्जेक्ट में नहीं हैं, लेकिन उनके पास आईडी हैं, जो (एफ़िक) लगातार पूर्णांक हैं

तो आप इस तरह के सभी समयबद्धता साफ़ कर सकते हैं:

 var id = window.setTimeout(function() {}, 0); while (id--) { window.clearTimeout(id); // will do nothing if no timeout with id is present } 

मुझे लगता है कि इसे पूरा करने का सबसे आसान तरीका सभी setTimeout आइडेंटिफ़ार्स को एक सरणी में संग्रहीत करने के लिए होगा, जहां आप उन सभी पर आसानी से clearTimeout() को पुनरावृति कर सकते हैं।

 var timeouts = []; timeouts.push(setTimeout(function(){alert(1);}, 200)); timeouts.push(setTimeout(function(){alert(2);}, 300)); timeouts.push(setTimeout(function(){alert(3);}, 400)); for (var i=0; i<timeouts.length; i++) { clearTimeout(timeouts[i]); } 

मेरे पास Pumbaa80 का जवाब है जो कि पुराने आईई के लिए विकसित करने के लिए उपयोगी हो सकता है।

हां, सभी प्रमुख ब्राउज़र्स टाइमआउट आईडी को लगातार पूर्णांक के रूप में लागू करते हैं (जो विनिर्देश द्वारा आवश्यक नहीं है )। प्रारंभिक संख्या ब्राउज़र में फ़ॉर्म ब्राउज़र को अलग करता है। ऐसा लगता है कि ओपेरा, सफारी, क्रोम और आईई> 8 1 से समयबाह्य आईडी, 2 और आईई से Gecko- आधारित ब्राउज़रों को शुरू करता है <= 8 कुछ यादृच्छिक संख्या से है जो जादुई टैब रिफ्रेश में बचा है। आप इसे स्वयं खोज सकते हैं

ये सब मीन यह है कि IE में <= 8 while (lastTimeoutId--) चक्र 8 गुना से अधिक समय से चल सकता है और " इस पृष्ठ पर एक स्क्रिप्ट इंटरनेट एक्सप्लोरर को धीमे चलाने के लिए पैदा कर रहा है " संदेश दिखा सकता है । इसलिए यदि आप सभी टाइमआउट आईडी को नहीं सहेज सकते हैं या विंडो को ओवरराइड नहीं करना चाहते हैं .setTimeout आप एक पृष्ठ पर पहले टाइमआउट आईडी को सहेज सकते हैं और इसे समाप्ति समाप्ति समय तक नहीं माना जा सकता है।

प्रारंभिक पृष्ठ लोड पर कोड निष्पादित करें:

 var clearAllTimeouts = (function () { var noop = function () {}, firstId = window.setTimeout(noop, 0); return function () { var lastId = window.setTimeout(noop, 0); console.log('Removing', lastId - firstId, 'timeout handlers'); while (firstId != lastId) window.clearTimeout(++firstId); }; }); 

और फिर सभी लंबित टाइमआउट साफ़ करें जो संभवत: विदेशी कोड द्वारा निर्धारित किए गए थे, जो आप चाहते हैं

कैसे एक वैश्विक सरणी में समय समाप्ति आईडी को स्टोर करने के बारे में, और विंडो कॉल के फ़ंक्शन कॉल को दर्शाने के लिए एक विधि को परिभाषित करें।

 GLOBAL={ timeouts : [],//global timeout id arrays setTimeout : function(code,number){ this.timeouts.push(setTimeout(code,number)); }, clearAllTimeout :function(){ for (var i=0; i<this.timeouts.length; i++) { window.clearTimeout(this.timeouts[i]); // clear all the timeouts } this.timeouts= [];//empty the id array } }; 

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

हमने इस सटीक मुद्दे को हल करने के लिए एक पैकेज प्रकाशित किया है।

npm install time-events-manager

इसके साथ, आप टाइमआउट के माध्यम से सभी समय-सीमा और अंतराल देख सकते timeoutCollection और timeoutCollection ऑब्जेक्ट्स वहाँ भी एक removeAll सभी समारोह जो संग्रह और ब्राउज़र दोनों से सभी समय समाप्ति / अंतराल को साफ करता है।