Há uma grande diferença entre um script entrando em loop ou aguardando um servidor na Web. Normalmente, é o segundo caso que causa erros "O script não está respondendo".
O Firefox não tem como saber a diferença entre um servidor Web não responder ou apenas ser lento. Portanto, ele possui alguns mecanismos de corte do tipo guilhotina, como dom.max_script_run_time e dom.max_chrome_script_run_time , que especificam quanto tempo está disposto a esperar antes de cancelar o script e qualquer conexão que possa estar aguardando no momento.
Esse tipo de mecanismo é muito perigoso de usar. Por exemplo, ao comprar um item na Web, o site de pagamento on-line pode demorar a reagir; portanto, o Firefox cancelará o script e a conexão com resultados desconhecidos em relação à sua conta bancária.
O que estou tentando dizer é que livrar-se desses erros de "script não responde" pode ser pior do que os próprios erros. É melhor usar uma extensão como NoScript para proibir todo o javascript em todos os sites que você visita, exceto aqueles em que confia (ou pelo menos não permite o javascript de terceiros). Na verdade, esse é um mecanismo de defesa que você e todos devem usar contra vírus drive-by-browser.