2013-01-30 17 views
7

tôi cần thêm thẻ script sau vào DOM sau một vài điều chạy trên trang của mình:thêm một thẻ script để DOM với javascript trong IE với dữ liệu attribute`

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

Tôi biết rằng tất cả mọi thứ một cách tối ưu sẽ có trong tệp yêu cầu của tôi, nhưng hiện tại tôi cần phải sửa lỗi này để làm việc trong IE.

gì tôi có được làm việc trong FF/Chrome là:

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

Tuy nhiên, IE không thích nó khi tôi cố gắng để thiết lập các thuộc tính 'data-main' và do đó không làm việc.

Làm cách nào tôi có thể giải quyết vấn đề này và thêm phần tử tập lệnh vào đoạn mã và tải tập lệnh cùng một lúc?

Cảm ơn

+0

Có lẽ nó chỉ là sự sao chép ở đây, nhưng bạn có thêm một 'h' trong 'appendChihld'. – bfavaretto

Trả lời

9

này dường như làm việc tốt trong IE cũng như:

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

'văn bản/javascript' có vẻ là vấn đề. Cảm ơn! –

+0

bạn được chào đón .. :) –

Các vấn đề liên quan