Khi thực hiện chúng tôi nhận ra tất cả các câu trả lời trước đây có vấn đề phổ biến mà Chrome sẽ chặn chúng với kết nối chậm kể từ document.write
là một đồng bộ chức năng. Vấn đề được thảo luận trong this post.
Giải pháp thường là sử dụng trình tải hiện đại hoặc biên dịch trước mã js.
Tuy nhiên, nếu trường hợp sử dụng của bạn vẫn yêu cầu phương pháp này, bạn cần sử dụng cuộc gọi không đồng bộ. Ví dụ minh họa là the way Google Analytics is loaded.
Về cơ bản, các mã trên chuyển thành:
<script>window.jQuery || (function(){
// Create the DOM node
a=document.createElement('script');
a.src="http://path-to-the-script.js";
a.async=1;
// Find a node, and insert the script before it
m=document.getElementsByTagName('script')[0];
m.parentNode.insertBefore(a,m);
})()</script>
Có rất nhiều bộ tải kịch bản viết bằng JavaScript. Chúng ta sẽ giả sử bạn muốn có một giải pháp HTML tĩnh? –
Chắc chắn, nhưng đó không phải là câu hỏi của tôi. – tjons