Desidero eseguire il benchmark del codice JavaScript nel browser, ma potrebbe attivare il popup "Avviso: non risponde script" di Firefox. Ciò consente all'utente di fare clic su "Interrompi script" nel caso in cui il browser venga catturato in una funzione di fuga. Mentre è visualizzato il pop-up, la funzione attualmente in esecuzione è stata interrotta. Questo non è l'ideale, quindi c'è un modo per eseguire i miei benchmark in modo diverso in modo che Firefox non mostri questo avviso e rovini i miei risultati?Come evitare il popup Script non risponde in Firefox con Javascript in esecuzione prolungata?
risposta
Nel indirizzo tipo di barra di Firefox about: config
si desidera modificare dom.max_script_run_time essere abbastanza grande per gli script per l'esecuzione.
Devi dividere le azioni lunghe in quelle più piccole ed eseguirle a turno. Ciò consentirà anche una migliore indicazione di avanzamento.
Potete elaborare? Un semplice esempio, forse? – spoulson
Ecco un esempio di come usare setTimeout per spezzare la gestione del javascript: http://www.sonofsofaman.com/hobbies/code/settimeout.asp Se stai facendo benchmark, assicurarsi che si consente il codice per correre abbastanza a lungo per compensare la risoluzione del timer. Probabilmente vorrai leggere questo: http://ejohn.org/blog/accuracy-of-javascript-time/ – Annie
Questo link sembra essere rotto. Potresti approfondire come farlo nella tua risposta? – Chris
È possibile utilizzare lo script da questa domanda per rompere l'elaborazione di lunghe liste in blocchi più piccoli:
How can I give control back (briefly) to the browser during intensive JavaScript processing?
veda in blog di Nicholas C. Zakas Che cosa determina che uno script è di lunga durata? (A 2009/01/05)
Velocizza il tuo JavaScript, Parte 1 http://www.nczonline.net/blog/2009/01/13/speed-up-your-javascript-part-1/
ci sono le ragioni ei modi per evitare la finestra di
Il codice qui sotto risolto il problema per me. ..
<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>
- 1. Javascript: errore di script non risponde
- 2. Considerazioni sulla memoria per script php con esecuzione prolungata
- 3. Elimina una scheda in "Script non risponde"
- 4. Attività a esecuzione prolungata con server asincrono
- 5. I lavori Sidekiq con esecuzione prolungata continuano a morire
- 6. Script non risponde - è possibile evitarlo?
- 7. Come evitare il codice spaghetti in Javascript
- 8. Come un bookmarklet può evitare il blocco popup
- 9. Esecuzione di Javascript personalizzato su ogni pagina in Mozilla Firefox
- 10. jQuery Plugin Modulo non risponde bene con FireFox
- 11. jQuery funziona in Firefox quando Firebug è in esecuzione, non funziona quando Firebug NON è in esecuzione
- 12. Javascript non risponde controllando molti elementi
- 13. JavaScript: ottiene il nodo corrente in esecuzione <script>?
- 14. Apri collegamento in finestra popup con Javascript
- 15. tomcat in esecuzione, ma la porta 8080 non risponde
- 16. Selenium non è in esecuzione con Firefox 12.0
- 17. ie8 javascript non in esecuzione o in caricamento
- 18. Android, AsyncTask, processi in esecuzione prolungata e modifiche di orientamento
- 19. Javascript non in esecuzione quando si risponde a una finestra di dialogo JQuery
- 20. Come evitare HTML in JavaScript
- 21. Esecuzione di script in HtmlAgilityPack
- 22. Come posso ottenere il percorso dello script attualmente in esecuzione con Javascript?
- 23. Processo in esecuzione prolungata che restituirà un file
- 24. Come si stampa da una finestra popup in javascript?
- 25. TPL Parallel.Per attività a esecuzione prolungata
- 26. Esecuzione javascript in PHP
- 27. Implementazione di attività a esecuzione prolungata in background IOS
- 28. Come limitare il tempo di esecuzione di uno script BASH
- 29. Jquery .show() non funziona in firefox
- 30. Esecuzione selenio con firefox senza display
Dovrebbe farlo per ogni utente della pagina? – Oded
Lo sta usando per il benchmarking - Non penso che ci siano altri utenti. – Annie