MSIE 8 Problemas de desempenho com gráficos do dojo: dojo._getmarginbox
-
15-09-2020 - |
Pergunta
Eu tenho uma página com 6 gráficos dojox.charting.Chart2d
que funcionam bem em todos os navegadores exceto ie.No IE8, os gráficos levam mais de um minuto para carregar.
Profiling mostra que, de longe, a maioria do tempo está sendo consumida pela dojo._getMarginBox
: 57 chamadas leva entre 48 e 66 segundos.
- .
- Alguém mais tem experiência com isso?
- Alguém mais tem alguma sugestão (além de se livrar do IE, que infelizmente não é uma opção)?
Solução
Ok, nós enterramos.A questão foi que dojo._getmarginbox foi perverso lento, cerca de 850 ms / chamada.Enquanto eu estava ocupado perfil e procurando sugestões, alguém foi o código HTML (reconhecidamente CRUFTY) e limpou, incluindo fechando alguns blocos não feitos e similares.
Desempenho instantaneamente melhorado por um fator de cerca de 5.
A hipótese de trabalho agora é que o IE8 é uma pilha de lixo ineficiente em encontrar a caixa incluída se tiver que lidar com árvores domábicas não canônicas.
Isso também melhorou o desempenho em Chrome e Firefox, pelo menos no Linux.