В каких обстоятельствах производительность Javascript будет хуже в IE8, чем IE7?

Я работаю в компании, которая построила интерактивные сидения с использованием Javascript. Вот пример: http://seatgeek.com/event/show/457624/miami-dolphins-at-new-york-jets-2010-12-12/. Во многом они имитируют функциональность Google Maps.

Мы имеем дело с нечетной проблемой - производительность для карт хорошо во всех браузерах, кроме IE8. Я включаю IE6 и IE7 в категории "все браузеры". Мы видим заметно худшую производительность JS в IE8. Когда вы пытаетесь перетащить карту в IE8, она немного блокируется и наблюдается заметное отставание. Но это не проблема в IE6 или IE7.

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

Мы провели сравнительный анализ с использованием dynaTrace, и кажется, что задержка не вызвана обработкой JS, по сути, а что dynaTrace называется "рендерингом". Кажется удивительным, что более новая версия IE имела бы худший рендеринг.

Ответ 2

IE8 визуализирует PNG по-разному. Попробуйте заменить их изображением заглушки и посмотрите, что произойдет. Кроме того, ваш сайт очень медленный: изображения не загружаются, и их тонна. Этот вид рендеринга может быть легко выполнен с помощью raphaeljs без использования каких-либо изображений (оригиналы, вероятно, являются векторами - экспортируют их как пути и визуализируют с помощью raphael).

Кроме того, вы полностью напортачили сжатие: вам не нужен альфа-канал, и использование палитры в вашей ситуации будет лучше.