JQuery всплывает процессор в Firefox - PullRequest
0 голосов
/ 09 октября 2009

Я получил довольно много jQuery-скриптов в моем js-файле, и теперь я испытываю, как ЦП проходит через крышу, когда открываю страницу в Firefox.

Глядя на консольную панель Firebugs, я вижу следующую ошибку: слишком много рекурсии.

Тогда это относится к моему файлу jquery-1.3.2.min.js.

Как я могу узнать, какая функция jQuery вызывает скачок ЦП?

Я знаю, что могу отключить одну и одну функцию jQuery, пока не найду причину. Я просто надеюсь, что есть лучший способ отладки.

ОБНОВЛЕНИЕ

Когда я открыл скрипт из Firebug, я обнаружил, что файл jquery-1.3.2.min.js принадлежит другому сайту (одна из многих страниц, открытых в моем браузере).

Я был одурачен, потому что браузер всплыл только тогда, когда я открыл свою собственную страницу. Может ли это произойти, тогда браузер загружает jquery-1.3.2.min.js и jquery-1.3.2.js?

Ответы [ 2 ]

1 голос
/ 09 октября 2009

Это также происходит в IE8? IE8 имеет профилировщик, который скажет вам, сколько времени тратится на каждую функцию javascript и сколько раз они вызывались. (Нажмите f12 и нажмите «Профилировщик», затем нажмите «Начать профилирование» и загрузите страницу)

Редактировать: Звучит так, как будто вы передаете jQuery что-то неожиданное, что приводит к бесконечному повторению jQuery.

Вы можете попробовать этот плагин регистрации , чтобы увидеть, что происходит до сбоя

0 голосов
/ 09 октября 2009

Слишком большая рекурсия означает, что некоторая функция, скажем, f (), вызывает себя, а затем сама себя слишком много раз. Или, может быть, f () вызывает g () и g (), вызывает f () и т. Д. Каждый вызов функции приводит к росту стека.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...