Internet Explorer 8 ожидает, пока страница полностью не отобразится и не будет выполнен javascript.

У нас есть довольно большая веб-страница с кучей javascript. При загрузке в Firefox / Chrome страница загружается постепенно. Сначала визуализируется и отображается уже полученный html, а затем выполняется javascript.

Однако Internet Explorer 8 ожидает полного получения запроса и выполнения его javascript, прежде чем он отобразится. Создается впечатление, что приложение какое-то время не отвечает.

У нас есть один ноутбук, на котором IE8 загружает страницу, например Firefox / Chrome, и мы искали параметр в IE8, чтобы указать, что ему не нужно ждать выполнения всего javascript, прежде чем показывать страницу или ее часть.

Кто-нибудь знает, есть ли такая настройка и где ее найти? Мы проверили, что рамка Chrome для Internet Explorer не установлена.

Обновление: для получения дополнительных разъяснений, как отмечает @Thariama в комментариях, я также подумал, что IE8 всегда ждет, чтобы отобразить всю страницу, но, видя, что этот ноутбук отображает ее, я почти уверен, что он загружает 'Firefox- способ'. Ноутбук имел вдвое меньше оперативной памяти и мощности процессора, чем сопоставимый настольный компьютер, и он выглядел и чувствовал себя быстрее (из-за рендеринга).


person Peter Eysermans    schedule 07.06.2010    source источник
comment
Единственное, что я знаю, это то, что FF визуализирует все входящие данные как можно скорее; IE в прежних версиях ВСЕГДА ждал полного получения данных перед рендерингом чего-либо (мне интересно, почему это работает на вашем ноутбуке с IE8).   -  person Thariama    schedule 07.06.2010
comment
Я думаю, что без более подробной информации о том, как построена страница и что вы на ней делаете, трудно дать какие-либо полезные ответы. Единственное, о чем я могу думать, это то, что если страница состоит из одной большой таблицы, IE6 загрузит все, прежде чем отобразить ее. Я не могу сейчас вспомнить, делает ли IE8 то же самое. Страница находится в стандартном режиме?   -  person RoToRa    schedule 07.06.2010
comment
@Thariama Я тоже был уверен, что это так. Я видел, как этот ноутбук рендерил «Firefox-way», а затем подумал, есть ли какие-то секретные настройки, о которых я понятия не имел. @RoToRa Страница использует таблицы (не будем туда заходить) и находится в стандартном режиме.   -  person Peter Eysermans    schedule 07.06.2010


Ответы (3)


Сегодня я столкнулся с той же проблемой, когда пытался определить, почему IE8 будет отображать инкрементально при загрузке с локального хоста, но не при загрузке с сервера интрасети.

Исправление состоит в том, чтобы сообщить IE, какой движок рендеринга использовать. Я предпочитаю всегда делать рендеринг с использованием новейшего доступного движка.

<head>
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    ...

Причина, по которой это происходило, заключается в том, что при загрузке с localhost IE рендерил с движком IE8 в стандартном режиме. При загрузке из интрасети IE по умолчанию использовал рендеринг в режиме совместимости с использованием механизма IE7. Механизм IE7 будет останавливаться до тех пор, пока не будет загружена вся таблица перед рендерингом, но механизм IE8 будет отображать таблицу постепенно.

Чтобы проверить, в каком режиме IE находится на определенной странице, нажмите F12, чтобы открыть инструменты разработчика, и в области меню есть «Режим браузера», который сообщает вам, какой движок рендеринга он выбрал, и «Режим документа», который указывает режим причуд. или стандартный режим.

person Tim Lewis    schedule 15.06.2012

Недавно мне было поручено решить проблему рендеринга страницы IE8 в устаревшем веб-приложении (без значительного изменения кода на стороне сервера). Я обернул самые большие разделы страницы в элементы текстового поля (на стороне сервера) и использовал JavaScript для извлечения их содержимого, удаления текстовых полей и вставки html там, где было текстовое поле ... это сработало красиво ... даже кажется чтобы быстрее загружаться в современных браузерах.

person JayB    schedule 15.05.2016

Если люди используют IE, а он всегда так и поступает, они уже привыкли к этой идее «невосприимчивости»: всякий раз, когда я открываю IE для проверки совместимости, я просто принимаю тот факт, что все страницы какое-то время выглядят «невосприимчивыми».

Это часть IE, люди, живущие в невежестве, привыкли к этому, они никуда не денутся.

Не столько решение вашей проблемы, которого, вероятно, нет, сколько указание на то, что это не такая уж большая проблема. Я не думаю, что есть способ дать браузеру инструкции по настройке модели рендеринга для вас, и не должно быть, пользователи должны иметь возможность настраивать модели рендеринга, но не сайты. Эти штуки - врата для вирусов.

person Zorf    schedule 07.06.2010
comment
Я говорил о настройке в IE8, управляемой пользователем. - person Peter Eysermans; 07.06.2010