У меня была похожая проблема, может, такая же.
Это может произойти, если вы попытаетесь проанализировать огромный кусок html с помощью jQuery $ (html).
В моих тестах это происходило только в Firefox 3.6.16 в Windows.
Firefox 4.0.1 на Ubuntu вел себя намного лучше. Наверное, не имеет ничего общего с ОС, просто механизм сценариев в 4.x намного лучше ..
Решение:
Вместо
var $divRoot = $(html);
Я сделал
var $temp = $('<div style="display:none;">'); // .appendTo($('body')); // (*)
$temp.html(html); // using the client's html parsing
var $divRoot = $('> div', $temp); // or .children() or whatever
// $temp.remove(); // (*)
(*)
Я помню, что в некоторых случаях вам нужно добавить временный узел в тело, прежде чем jquery сможет применить любые селекторы. Тем не менее, в этом случае, похоже, без этого все работало нормально.
В FF 4.x различий не было, но это позволило избежать ошибки переполнения стека в FF 3.x.