Anexando HTML a um elemento de contêiner sem innerHTML revisitado
A questão em questão é como anexar HTML a um elemento de contêiner, evitando as limitações e armadilhas do uso da propriedade innerHTML. Como o OP aponta corretamente, o innerHTML, devido ao seu comportamento de substituir o conteúdo existente, pode atrapalhar elementos dinâmicos, como mídia incorporada.
Felizmente, existe uma alternativa que supera esses problemas: insertAdjacentHTML() . Este método fornece uma maneira conveniente e flexível de anexar HTML a um local especificado dentro de um elemento de contêiner.
O método insertAdjacentHTML() usa dois parâmetros:
Posição de Inserção: Este parâmetro determina onde a string HTML será inserida. Pode assumir um de quatro valores:
No seu caso específico, você gostaria de usar "beforeend" como a posição, anexando efetivamente o conteúdo HTML à parte inferior do elemento contêiner sem criar quaisquer tags adicionais, como você faria ao usar createElement().
Por exemplo:
var container = document.getElementById('myContainer');
container.insertAdjacentHTML('beforeend', '');
Este código acrescentaria um novo elemento div com o ID "newElement" na parte inferior do contêiner elemento, sem afetar os elementos existentes ou o conteúdo dinâmico.
No geral, insertAdjacentHTML() fornece uma solução robusta e versátil para anexar HTML a um elemento contêiner sem encontrar as desvantagens do innerHTML.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3