gpt4 book ai didi

javascript - jQuery when().done() 在多个对象上

转载 作者:行者123 更新时间:2023-11-30 09:43:30 27 4
gpt4 key购买 nike

我的进度条有问题。我想在加载每个下一个函数后更改进度条。这是我的代码:

var tick=1;
var count=10;
function example(){
$('#progress div').css('width',(tick*count)+'%');
tick++;
}
$.when($.getJSON("data1.json",function(_a){data1=_a;})).done(function(){
example();
$.when(someLoadFunction).done(function(){
example();
$.when(someLoadFunction2).done(function(){
example();
//7 more...
});
});
});

如何简化脚本,方便日后扩展。

最佳答案

创建要调用的函数数组,然后循环访问这些函数。不是 jQuery 用户,因此可能有更有效的方法来执行此操作,但至少这是可以合理维护的。或者作为@A。 Wolff 建议...使用链接。

注意如果您想为每个函数使用不同的回调,请将对象文字传递给带有函数/回调的函数(在这种情况下不需要回调参数)。

$.when($.getJSON("data1.json", function(_a) {
data1 = _a;
})).done(function() {
var functionArr = []; //array of functions
loopWhen(functionArr, example());
});


function loopWhen(functionArr, callback) {
(var i = 0; i < functionArr.length; i++) {
$.when(functionArr[i]).done() {
callback();
};
};
};

关于javascript - jQuery when().done() 在多个对象上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40040083/

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