Ik ben bezig aan een pic -> ASCII converter en ik loop tegen iets irritants aan. Ik maak nu gebruik van AJAX voor een wat snellere gebruikservaring zonder knipperen. Alles werkt prima... ik genereer de ascii met PHP en dan zet ik m in de juiste div met innerHTML = ...
Echter, als ik nu de ASCII kleurtjes geef (ieder symbool z'n eigen <span style="color: #aaaaaa">) dan wordt de pagina ontzettend traag. Ik dacht dat het aan mijn conversie algoritme lag, maar niets is minder waar. Voor een grote afbeelding is de conversie af in ongeveer een seconde. De hoeveelheid data is goed te overzien (honderden kb) maar dan duurt het een whopping 30 seconden om het innerHTML command uit te voeren. Als ik gewoon een nieuwe html pagina open (waar dus de nieuwe html al gewoon in de div staat) opent de pagina vele malen sneller.
Waarom is innerHTML injectie zo ontzettend veel trager dan gewoon een nieuwe pagina openen?
Echter, als ik nu de ASCII kleurtjes geef (ieder symbool z'n eigen <span style="color: #aaaaaa">) dan wordt de pagina ontzettend traag. Ik dacht dat het aan mijn conversie algoritme lag, maar niets is minder waar. Voor een grote afbeelding is de conversie af in ongeveer een seconde. De hoeveelheid data is goed te overzien (honderden kb) maar dan duurt het een whopping 30 seconden om het innerHTML command uit te voeren. Als ik gewoon een nieuwe html pagina open (waar dus de nieuwe html al gewoon in de div staat) opent de pagina vele malen sneller.
Waarom is innerHTML injectie zo ontzettend veel trager dan gewoon een nieuwe pagina openen?