2013-01-30 6 views
7

ho bisogno di aggiungere il seguente tag script al DOM dopo un paio di cose correre sulla mia pagina:l'aggiunta di un tag script al DOM con javascript in IE con i dati attribute`

<script data-main="js/main" src="lib/Require/require.js"></script> 

So che in modo ottimale tutto sarà nel mio file richiesto, ma a partire da ora ho bisogno di aggiornare questo per funzionare in IE.

quello che ho che sta lavorando in FF/Chrome è:

var script = document.createElement('script'); 
script.setAttribute('data-main', 'js/main'); 
script.src = 'lib/Require/require.js'; 
document.getElementsByTagName('script')[0].parentNode.appendChihld(script); 

Tuttavia, IE non piace che quando provo a impostare l'attributo 'data-main' e quindi non sta funzionando.

Come posso aggirare questo e devo aggiungere l'elemento di script al dom e caricare lo script allo stesso tempo?

Grazie

+0

Probabilmente è solo la trascrizione qui, ma avete un extra 'h' in' appendChihld'. – bfavaretto

risposta

9

questo sembra funzionare bene in IE così:

var scriptTag = document.createElement("script"); 
scriptTag.type = "text/javascript"; 
scriptTag.src = "lib/Require/require.js"; 
scriptTag.setAttribute("data-main", "js/main"); 
(document.getElementsByTagName("head")[0] || document.documentElement).appendChild(scriptTag); 
+0

"text/javascript" sembra essere il problema. Grazie! –

+0

sei il benvenuto .. :) –