Документация на этом сайте - виснет браузер FireFox

Уже сделанные или потерявшие актуальность исправления и изменения
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Документация на этом сайте - виснет браузер FireFox

Сообщение samdark »

Хм, то есть даже не +1, а поиск. Ну и дела. Вообще последний FF ведёт себя крайне плохо. У меня виснет на каждом пятом сайте намертво.
uni_advisor
Сообщения: 8
Зарегистрирован: 2012.07.19, 15:52

Re: Документация на этом сайте - виснет браузер FireFox

Сообщение uni_advisor »

Хехех!!! Seamonkey - сила! Он хоть попроще визуально, зато работает стабильно и память так не выжирает. Еще бы Firebug под него бы, вообще было бы хорошо. Хочу рассказать о проблеме более детально. Как воспроизвести проблему.
Скачиваем этот злополучный файл inputtools.js. Его можно получить просто сохранив локально страницу с сайта. Создаем пустую html, указываем использовать этот файл. Открываем его в браузере и наблюдаем как у нас Firefox отжирает память у системы.

Код: Выделить всё

<!DOCTYPE html>
<html>
<head>
  <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  <title>Hello</title>
  <script  type="text/javascript" src="inputtools.js"></script>
</head>
<body>
Hello, World!
</body>
</html>
Проблема в том, что этот файл сериализован и его очень трудно прочитать. Я попробовал его разбить и вот что получилось.

Код: Выделить всё

(function() {
	function evalOrDefer(code) {
		if (google.loader.eval.elements) {
			google.loader.eval.elements(code);
		} else {
			google.loader.eval.scripts = google.loader.eval.scripts || {};
			google.loader.eval.scripts['elements'] = google.loader.eval.scripts['elements']
					|| [];
			google.loader.eval.scripts['elements'].push(code);
		}
	}
      evalOrDefer("... здесь длиннющая символьная строка из непонятной последовательности всяких символов ...");
})();
В результате перед нами рекурсивные вызовы функции без какого-либо условия выхода из нее. Вот это чудо-гугловое творение и выжирает память!
uni_advisor
Сообщения: 8
Зарегистрирован: 2012.07.19, 15:52

Re: Документация на этом сайте - виснет браузер FireFox

Сообщение uni_advisor »

Сначала думал, что проблемы касаются только 64-битных систем.
about:config
находим javascript.options.strict и устанавливаем значение в true. Открываем страничку на сайте и наблюдаем как выжирается вся доступная память. Если этот параметр установить false, то все проходит хорошо. Проблема воспроизводится в Firefox 14.01 в Windows 7 x86_64 и в Windows XP. С браузером Seamonkey 2.11 аналогичное поведение. Если установлена Web Developer Panel, то эти же опции можно установить из меню Отключить->Отключить JavaScript->Строгие предупреждения.
https://bugzilla.mozilla.org/show_bug.cgi?id=634444
SergV
Сообщения: 192
Зарегистрирован: 2012.07.08, 11:27

Re: Документация на этом сайте - виснет браузер FireFox

Сообщение SergV »

uni_advisor писал(а):Экспериментально выяснил, что проблема в следующем скрипте:
http://www.google.com/uds/api/elements/ ... uttools.js
..............
uni_advisor +10 за проделанную работу..., заблокировал ссылку адблоком, и теперь всё открывает норм. :)
Ну и дела. Вообще последний FF ведёт себя крайне плохо. У меня виснет на каждом пятом сайте намертво.
Не последний, а последние, документацию с 12 версии FF так открывал, а может и ранними версиями тоже. PS: Сейчас вспомнил, года полтора - два назад я тоже заходил сюда, смотрел документацию, и тоже самое было, а тогда версия была если не ошибаюсь 8-я или 9-я, или ещё меньше.
Что касается других сайтов, то пока я зависаний не встречал таких, с загрузкой памяти до 3,6(по крайней мере у меня) гига памяти не на одном сайте, а их я за 12-14 часов в день просматриваю много, особенно когда чего гуглишь, до пары сотен и больше.
Вылеты лисы, это да.., проблема, тут уже достало, чуть что не так, и баг репорт просит отослать инфу, и это на любом сайте может произойти, а вот таких "зависаний"..., тут у меня такое с 2004(2005) года, сколько я лисой пользуюсь не разу не было. Ну да ладно...

В данном случае странно только одно, почему данный гугла скрипт так грузит лису(и как вижу теперь и другие) именно на этом сайте и не где больше(по крайней мере у меня)? Может какой конфликт с другим джава скриптом подключаемым на страницах документации?
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Документация на этом сайте - виснет браузер FireFox

Сообщение samdark »

Так двумя постами выше вяснили мы почему. Отклчите strict режим и всё будет в норме.
SergV
Сообщения: 192
Зарегистрирован: 2012.07.08, 11:27

Re: Документация на этом сайте - виснет браузер FireFox

Сообщение SergV »

Я последние пару постов только поверхностно глянул не читая. Да.., отключение javascript.options.strict исправляет проблему. Ещё раз спасибо.
Ответить