Проблемы с производительностью MSIE 8 при работе с диаграммами dojo: dojo._getMarginBox - PullRequest
1 голос
/ 13 июля 2010

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

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

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

1 Ответ

1 голос
/ 15 июля 2010

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

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

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

...