Ошибка отображения в IE8 8.0.7601.17514 - PullRequest
1 голос
/ 15 сентября 2011

Я вижу странную прерывистую ошибку отображения на одном из сайтов, которыми я управляю.Кажется, что это происходит периодически, и на некоторых машинах под управлением Windows7 SP1 и IE8.0.7601.17514.Я не смог повторить ошибку на любой другой конфигурации, включая Windows7 ie9, ie8, ie7 (последние 2 смоделированы с ietester), WindowsXP с IE8, firefox, chrome, safari и т. Д. Также стоит отметить, что иногда вы получаете эту ошибку,в других случаях - нет, даже на той же странице.

Кажется, проблема в том, что содержимое из мега-выпадающего меню выходит наверх и отображается в случайных местах (см. http: www.brenclosures.com.au/images/aaa-image003.jpg)

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

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

Я также использую jQuery, и это в 1.3на большей части сайта.Однако после просмотра похожих сообщений я обновился до версии 1.6.4 на некоторых страницах, но они все еще показывают ту же проблему.Я только что попросил человека, который видит эту проблему (который, к сожалению, является клиентом), полностью протестировать страницы с отключенным jQuery, чтобы выяснить, имеет ли это какое-то значение.

Я также использую плагин jQuery fancybox,который, я думаю, также включает jquery.easing.1.3

У кого-нибудь есть идеи о том, что может происходить?Я не думаю, что это аппаратная проблема, поскольку мы также однажды видели ошибку на виртуальной машине, хотя мы не смогли повторить ее!

URL-адрес сайта http://www.brenclosures.com.au, если выхочу посмотреть на себя.

Я был бы очень признателен за вашу помощь, так как этот меня совершенно ошарашил!

Приветствия Саймон


Хотел бы явстроить один, но я новый пользователь и ограничен в том, что я могу сделать.Они ссылаются в конце второго абзаца на фотографию, показывающую проблему.К сожалению, я не получил снимок экрана с графикой, появляющейся в окне поиска, которая была моей личной любимой!

Я также только что услышал, что обновление jquery до последней версии не решило проблему,но когда я отключил jquery, jquery easing (1.3) и fancybox, то проблема была связана с jquery.Я сейчас ищу, чтобы обновить все это и посмотреть, что произойдет.Я дам вам знать, когда я это сделаю.

Спасибо, Саймон


Хорошо, я думаю, что начинаю понимать, что происходит.Хотя я понятия не имею, почему!

Это влияет только на IE8 и только при включенном jQuery.Похоже, что это не проблема с fancybox или jQuery Easing, просто сама jQuery.Выключите это, и проблема исчезнет.

Сказав, что ошибка, похоже, не связана с чем-то, что на самом деле делает jQuery.Кажется, что происходит (и почему в определенные моменты времени только некоторые машины подвержены влиянию: -

  • Иногда градиент фона или png swoosh, кажется, задерживаются при загрузке, несмотря на то, чтоон находится на вершине стека.
  • IE8, кажется, зарезервировал место для изображения, даже если есть задержка
  • Поскольку ничего не существует, то каким-то образом jQuery приводит к загрузке случайногофоновое изображение из CSS в качестве замены
  • Как только «реальное» изображение загружается, проблема исчезает. Однако, как-то в IE8 эти изображения, похоже, имеют привычку застревать!

Поэтому решение, вероятно, заключается в предварительной загрузке фоновых изображений, но только в IE8.Я добавил в preloader сейчас и, надеюсь, проблема должна исчезнуть!Я отправлю еще раз, если это не так!


Это тоже не сработало!Я должен был задуматься!Если изображения застряли, загрузка их с помощью предварительного загрузчика не очень поможет!

Мои последние планы: -

  • Используйте спрайты, чтобы всеизображения загружаются сразу.Это предотвратит показ других частей, когда все будет загружаться одновременно.Опасность заключается в том, что ничего не загружается.

  • Используйте управление кешем, чтобы установить длинный TTL для фоновых изображений.Надеюсь, это будет означать, что если они успешно загрузятся один раз, вы больше не увидите ту же проблему.Проблема в том, что эти образы находятся на общем сервере Windows, поэтому управление кэшем не так просто настроить файл htaccess.Я, вероятно, изменю CSS для IE8, чтобы вместо этого можно было отправлять их на сервер Linux!


Последнее обновление.Я перепробовал все виды техник, и самое лучшее, что я могу сказать, это то, что я решил, что проблема длится примерно полдня или около того.Вот что я пробовал: -

  • Загрузка изображений с другого URL, где я также могу их кэшировать в браузере.Это была попытка после того, как я обнаружил, что проблема, кажется, проявляется, особенно когда png в заголовке застрял при загрузке.
  • Я действительно думал, что у меня есть это с этим!Я изменил jQuery так, чтобы вместо обычного элемента управления, чтобы начать загрузку, когда страница закончила загрузку, я изменил его на функцию onLoad, так что он якобы ожидает, пока все ресурсы также не загрузятся.Этот работал примерно полдня!

Последнее, что я хочу перед тем, как просто попросить их перейти на IE9, будет переписать всю систему меню в jQuery и удалить весь Spry со страницы.Я должен сказать, что у меня нет больших надежд на это.В любом случае мне нужно это сделать, но я обнаружил, что удаление Spry со страницы, похоже, не имеет никакого эффекта.

...