wstaw AdjacentHTML wszędzie

Jeśli chcemy wstawić treść do dokumentu HTML, mamy do wyboru 3 sposoby:

  • Używanie metod DOM, takich jak createNodeappendChild
  • Korzystanie z fragmentów dokumentu
  • Jak korzystać z aplikacji innerHTML

Można powiedzieć, że document.write ma też kilka zastosowań.

Funkcja innerHTML została ustandaryzowana w HTML5, a razem z nią metoda siostrzana insertAdjacentHTML, która działa jak innerHTML, ale pozwala dokładniej określić, gdzie chcemy wstawić zawartość HTML: przedBegin, afterBegin, beforeEnd i afterEnd.

var ul = document.getElementById("list");
ul.insertAdjacentHTML("beforeEnd", "<li>A new li on the list.</li>");

W 2008 r. John Resig napisał artykuł o insertAdjacentHTML, w którym podsumował:

Do tej pory głównym problemem z insertAdjacentHTML była brak obsługi w przeglądarkach. Firefox wdraża insertAdjacentHTML od wersji 8, dzięki czemu będzie on dostępny we wszystkich popularnych przeglądarkach, w tym na urządzeniach mobilnych. Jeśli chcesz użyć tej funkcji teraz i upewnić się, że działa ona w wersjach Firefoxa starszych niż 8, możesz użyć tego polyfilla.