Cree un elemento temporal (p. Ej. DIV), Asigne su código HTML a su innerHTMLpropiedad y luego agregue sus nodos secundarios al HEADelemento uno por uno. Por ejemplo, así:
var temp = document.createElement('div');
temp.innerHTML = '<link rel="stylesheet" href="example.css" />'
+ '<script src="foobar.js"><\/script> ';
var head = document.head;
while (temp.firstChild) {
head.appendChild(temp.firstChild);
}
En comparación con la reescritura del HEADcontenido completo a través de su innerHTML, esto no afectaría a los elementos secundarios existentes del HEADelemento de ninguna manera.
Tenga en cuenta que los scripts insertados de esta manera aparentemente no se ejecutan automáticamente, mientras que los estilos se aplican correctamente. Entonces, si necesita que se ejecuten scripts, debe cargar archivos JS usando Ajax y luego ejecutar su contenido usando eval().