Sur un environnement de développement Ruby on Rails, une page s'affichera après 30 secondes sur Firefox, mais prendra 90 secondes sur IE 8 (avec IE 7 Compatibility Mode). Une recherche plus poussée montre que Javascript devrait ralentir la page, car si Javascript est désactivé, le contenu de la page sera également affiché dans 30 secondes. Comme il y a probablement 7 ou 8 plugins jQuery, scripts Facebook et script Google Analytics, il faudra un certain temps pour déplacer tout le code Javascript à la fin du fichier HTML, ce qui devrait accélérer le contenu de la page. vue de sorte que le contenu soit affiché après 30 secondes, tout comme Firefox), y a-t-il un moyen de forcer IE à afficher le contenu de la page avant de finir d'exécuter tout le code Javascript?Comment forcer IE à afficher le contenu de la page avant de terminer toutes les exécutions Javascript?
Je pense que IE pourrait attendre que tout le code Javascript finisse en premier, parce que s'il y a document.write()
instructions, qui devraient être dans le HTML ... Firefox ou Chrome n'attend pas pour cela mais affiche le contenu tout de suite .
(sur le serveur de production, la page sera affichée sur Firefox après 5 à 7 secondes, car beaucoup de "partiels" (sous-composants HTML) sont mis en cache.El 8 prend beaucoup plus de temps aussi, environ 40 secondes ou plus.)
PS Une forte raison pour laquelle le Javascript est incorporé dans tout le HTML peut être que, disons s'il y a un "Image Carousel", le code HTML est dans un "partiel", qui est un fichier HTML généré par un fichier HAML, et tout le HTML ainsi que le code Javascript sont dans ce fichier, pour une meilleure encapsulation, au lieu d'avoir le HTML dans un fichier et le Javascript dans un autre fichier, mais je me demande si tous ces blocs de code Javascript utilisent seulement $(document).ready(function() { ... })
de jQuery, alors bloc de code ralentir l'affichage de la page sur IE?