Как я могу устранить проблемы производительности рендеринга в IE

StackOverflow https://stackoverflow.com/questions/212254

Вопрос

Наше веб-приложение отображается быстро в некоторых браузерах IE, медленно в других ... Кажется, это проблема HTML-рендеринга ... Первые 10% страницы отображаются сразу, последние 90% занимают до 10 секунд, и это статический контент. Я бегал с firefox / yslow, очень быстро рендерится. Кажется изолированным для некоторых пользователей / конфигураций т.е. Причудливый режим, похоже, не имеет значения.

Есть ли инструмент или приложение, которое я могу использовать, чтобы помочь мне обнаружить узкое место рендеринга? Я делаю что-то вопиющее в своем коде? Может ли это быть проблема JavaScript? Любая помощь или предложения будут высоко оценены. спасибо.

Это было полезно?

Решение

Используйте Fiddler для просмотра времени загрузки изображений, файлов CSS, JS и т. д. Другими словами, является ли кеширование проблемой? Javascript может определенно вызывать проблемы в разных версиях браузера. В некоторых версиях вы найдете много оптимизаций, которых нет в других. Кроме того, убедитесь, что ваш HTML является правильно сформированным HTML, если это возможно. То, как устроена страница, также может повлиять на жизнь. Если ваше дерево документов глубокое, может потребоваться подождать, чтобы отобразить большие секции, пока оно не прочитает все дочерние узлы. Еще одна вещь, которую стоит отметить, некоторые панели инструментов и плагины ожидают загрузки и могут замедлить срок службы. HTTP-прокси может помочь вам наблюдать за тем, что происходит в сети, по крайней мере.

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

Другие советы

Если он работает быстро в FF или Chrome, тогда это проблема JavaScript. IE7 ОЧЕНЬ медленен в обработке большого количества скриптов и сложного HTML. У нас была страница sharepoint, на рендеринг которой у нас ушло 10 секунд, а в FF и Chrome - 1 секунда. Мы протестировали страницу, добавив таймер к обработке на стороне сервера и отправив вывод клиенту через Response.Write (). Делая это, мы можем определить время сервера для обработки страницы и время клиента для отображения страницы (поскольку вы увидите результаты таймера на экране, а затем подождите 10 секунд, пока остальные будут отображаться). Узким местом было 100% IE на клиенте. Это также объясняет, почему скорость была переменной на компьютерах разных людей, потому что в зависимости от того, насколько быстро клиентский компьютер отображал страницу с некоторой скоростью от 8 до 15 секунд.

Мы даже заставили MS взглянуть на проблему, и они подтвердили, что в IE имеется «богатый рендеринг». двигатель работает медленнее .... IE8 работает намного быстрее, но сегодня это никому не поможет.

Используете ли вы какие-либо варианты поведения в вашем CSS? Я видел, как поведение ставит приложение на колени, если слишком много используется и / или если они влияют на слишком много элементов. Проверьте наличие каких-либо файлов .htc.

Конечно, поведение относится только к IE и использует JavaScript, поэтому я уверен, что разные версии IE справляются с ними более грамотно, чем другие.

Для таких сценариев существует специальный инструмент, называемый dynaTrace, который доступен бесплатно на этом веб-сайте: http://ajax.dynatrace.com/pages/ Этот инструмент действительно может вам помочь, потому что он отслеживает практически все и специально создан для IE.

Проверьте утечку памяти в скрипте.

http://www.javascriptkit.com/javatutors/closuresleak/index.shtml

Стив Соудерс дает отличную презентацию о 14 (простых) шагах для повышения эффективности ваших веб-страниц:

http://developer.yahoo.net/blogs /theater/archives/2007/08/steve_souders_high_performance.html

Если он висит в середине страницы, первое, что я лично хотел бы сделать, это убедиться, что все мои JavaScript-коды находятся в нижней части страницы.

IE отлично справляется с работой, особенно с JavaScript, поэтому, если вы переместите его в конец, IE сможет отобразить страницу, затем приступите к обработке JavaScript.

Я использую HttpWatch для устранения проблем связанных ресурсов (изображений, сценариев, CSS), проблем с сетью или HTTP в IE. Там бесплатно & amp; платная версия. Бесплатно - это хорошо, но вы теряете некоторые приятные функции.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top