2010-07-13 2 views
1

У меня есть страница с 6 dojox.charting.Chart2d диаграммами, которая отлично работает во всех браузерах кроме IE. В IE8 диаграммы занимают больше минуты, чтобы загрузить.Проблемы с производительностью MSIE 8 с графиком dojo: dojo._getMarginBox

Профилирование показывает, что большая часть времени потребляется dojo._getMarginBox: 57 вызовов занимает от 48 до 66 секунд.

  1. У кого-нибудь еще есть опыт работы с этим?
  2. У кого-нибудь есть какие-либо предложения (кроме того, избавиться от IE, что, к сожалению, не является вариантом)?

ответ

1

Хорошо, мы вырыли его. Проблема заключалась в том, что dojo._getMarginBox был слабый, около 850 мс/звонок. В то время как я занимался профилированием и поиском намеков, кто-то еще отправил (по общему признанию) HTML-код и очистил его, включая закрытие некоторых незакрытых блоков и тому подобное.

Производительность мгновенно улучшается с коэффициентом около 5.

Рабочей гипотезы в настоящее время является то, что IE8 является кучей мусора неэффективных при нахождении в поле ограждающего, если он имеет дело с неканоническим DOM дерев.

Это также улучшило производительность в Chrome и Firefox, по крайней мере, на LINUX.

Смежные вопросы