2012-06-26 16 views
8

Tôi gặp sự cố khi tải jQuery bằng Javascript. Tôi cần tải nó bằng Javascript vì có những điều kiện mà tôi chỉ có thể biết phía máy khách. Các nhận xét ra mã là vụ phải khởi tạo các kịch bản, nhưng tôi không có may mắn với họ.Tải jQuery động

var script_tag = document.createElement('script'); 
script_tag.setAttribute("type","text/javascript"); 
script_tag.setAttribute("src","http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js") 
//script_tag.onload = main; // Run main() once jQuery has loaded 
//script_tag.onreadystatechange = function() { // Same thing but for IE 
    //if (this.readyState == 'complete' || this.readyState == 'loaded') main(); 
//} 
document.getElementsByTagName("head")[0].appendChild(script_tag); 

http://mybsabusiness.com/samplesites/silver/sbsa01/

Đây là trang web rằng những vấn đề đang ở trên.

+1

nào bạn nhận được bất kỳ lỗi nào? 'main' làm gì? – Esailija

+2

Chính xác thì vấn đề là gì? Mã đó hoạt động hoàn toàn tốt. http://jsfiddle.net/4Euhk/ – sachleen

+0

Hiển thị cho chúng tôi chức năng chính, mã này hoạt động cho tôi –

Trả lời

16

Từ jQuerify bookmarlet:

function getScript(url, success) { 
    var script = document.createElement('script'); 
    script.src = url; 
    var head = document.getElementsByTagName('head')[0], 
     done = false; 
    // Attach handlers for all browsers 
    script.onload = script.onreadystatechange = function() { 
     if (!done && (!this.readyState 
      || this.readyState == 'loaded' 
      || this.readyState == 'complete')) { 
     done = true; 
     success(); 
     script.onload = script.onreadystatechange = null; 
     head.removeChild(script); 
     } 
    }; 
    head.appendChild(script); 
} 
getScript('http://code.jquery.com/jquery-latest.min.js',function() { 
    // Yay jQuery is ready \o/ 
});​ 
+0

Chỉ cần hoàn hảo! Cảm ơn bạn –

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