gpt4 book ai didi

javascript - 动态脚本加载的最佳方式

转载 作者:数据小太阳 更新时间:2023-10-29 04:56:41 25 4
gpt4 key购买 nike

我需要动态和顺序地加载一些 js 文件(即第二个脚本在第一个脚本加载完成后加载,第三个在第二个之后加载,依此类推)。

问题:如何检测脚本何时加载?我遇到了 onload 事件的问题——它不会在 IE8 中触发。看完this ,我尝试订阅 onreadystatechange 并编写了非常丑陋的代码来加载脚本:

function loadScript(url, callback) {
var isLoaded = false;
var script = document.createElement('script');

script.onreadystatechange = function () {
if ((script.readyState == 'complete' || script.readyState == 'loaded') && !isLoaded) {
if (callback) callback();
}
};
script.setAttribute('type', 'text/javascript');
script.setAttribute('src', url);
document.head.appendChild(script);
};

你能建议没有这些技巧的更好的跨浏览器解决方案吗?

更新:感谢您的回答。如果我还需要加载 jquery.js 怎么办(例如,客户端有旧版本):)?

最佳答案

我想你需要的是jQuery.getScript

该函数采用一个 URL 和一个 success 方法,您可以使用它链接加载脚本,从而顺序加载它们:

jQuery.getScript( url, function() { 
jQuery.getScript( url2, function()
{/*... all 2 scripts finished loading */}
);
});

关于javascript - 动态脚本加载的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7111131/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com