Les périls d'Element.innerHTML =
Ajouter du contenu HTML à un élément à l'aide de element.innerHTML = ... peut sembler une solution pratique raccourci, mais cela peut entraîner des problèmes de performances et un comportement inattendu.
Pourquoi c'est mauvais Code
Lorsque vous attribuez une nouvelle valeur à element.innerHTML, le code HTML existant est complètement remplacé. Cela déclenche une réanalyse par le navigateur de l'intégralité du sous-arbre, ce qui peut être coûteux si l'élément contient une quantité importante de code HTML complexe. La réanalyse peut :
Alternatives à innerHTML =
À la place, utilisez appendChild() pour ajouter un nouvel élément à la fin d'un élément existant. Par exemple :
var newElement = document.createElement('div'); newElement.innerHTML = '<div>Hello World!</div>'; element.appendChild(newElement);
Cette approche garantit que le code HTML existant est préservé et qu'aucune nouvelle analyse ne se produit.
Note d'optimisation
Certains navigateurs peut avoir des optimisations qui empêchent la nouvelle analyse lors de l'utilisation de innerHTML =. Cependant, il est préférable d'éviter cette pratique pour des raisons de cohérence et de performances.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!