2009-12-16 17 views
9

मैं ब्राउज़र में कुछ जावास्क्रिप्ट कोड बेंचमार्क करना चाहता हूं, लेकिन यह फ़ायरफ़ॉक्स की "चेतावनी: अनुत्तरदायी स्क्रिप्ट" पॉपअप को ट्रिगर कर सकता है। यह उपयोगकर्ता को रनवे फ़ंक्शन में पकड़ा गया ईवेंट में "स्टॉप स्टॉप" पर क्लिक करने की अनुमति देता है। जबकि पॉप-अप प्रदर्शित होता है, वर्तमान में चल रहे फ़ंक्शन को रोक दिया गया है। यह आदर्श नहीं है, तो क्या मेरे बेंचमार्क को अलग-अलग चलाने का कोई तरीका है कि फ़ायरफ़ॉक्स इस चेतावनी को पॉप अप नहीं करता और मेरे परिणाम बर्बाद नहीं करता है?फ़ायरफ़ॉक्स में लंबे समय तक चल रहे जावास्क्रिप्ट के साथ उत्तरदायी स्क्रिप्ट पॉपअप से कैसे बचें?

उत्तर

11

के बारे में फ़ायरफ़ॉक्स के एड्रेस बार में टाइप: config

आप dom.max_script_run_time बदलने के लिए अपनी स्क्रिप्ट को चलाने के लिए इतना बड़ा होना चाहता हूँ।

+7

क्या वह पृष्ठ के प्रत्येक उपयोगकर्ता के लिए ऐसा करना चाहता है? – Oded

+7

वह इसका उपयोग बेंचमार्किंग के लिए कर रहा है - मुझे नहीं लगता कि अन्य उपयोगकर्ता भी हैं। – Annie

9

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

http://www.sonofsofaman.com/hobbies/code/settimeout.asp

+2

क्या आप विस्तृत कर सकते हैं? एक साधारण उदाहरण, शायद? – spoulson

+0

जावास्क्रिप्ट को चलाने के लिए सेटटाइमआउट का उपयोग करने का एक उदाहरण यहां दिया गया है: http://www.sonofsofaman.com/hobbies/code/settimeout.asp यदि आप मानक कर रहे हैं, तो सुनिश्चित करें कि आप कोड को अनुमति दें टाइमर रिज़ॉल्यूशन के लिए काफी देर तक चलें। आप शायद इसे पढ़ना चाहेंगे: http://ejohn.org/blog/accuracy-of-javascript-time/ – Annie

+0

वह लिंक टूटा हुआ प्रतीत होता है। क्या आप विस्तार से बता सकते हैं कि आपके उत्तर में ऐसा कैसे करें? – Chris

4

निकोलस सी Zakas के ब्लॉग में देख रहे हैं वही निर्धारित करता है कि एक स्क्रिप्ट लंबे समय से चल रहा है? (2009/01/05 पर)

आपकी जावास्क्रिप्ट, भाग स्पीड अप 1 http://www.nczonline.net/blog/2009/01/13/speed-up-your-javascript-part-1/

वहाँ कारणों और तरीके संवाद

0

नीचे कोड मेरे लिए है कि समस्या हल से बचने के लिए कैसे कर रहे हैं। ..

<script type="text/javascript"> 
    function downloadJSAtOnload() { 
    var element = document.createElement("script"); 
    element.src = "deferredfunctions.js"; 
    document.body.appendChild(element); 
    } 
    if (window.addEventListener) 
    window.addEventListener("load", downloadJSAtOnload, false); 
    else if (window.attachEvent) 
    window.attachEvent("onload", downloadJSAtOnload); 
    else window.onload = downloadJSAtOnload; 
</script> 
संबंधित मुद्दे