有一个脚本为我提供了一些网址:
["slides\/1.html","slides\/2.html"]
现在我想加载这些幻灯片10秒钟,然后继续前进到下一张幻灯片。在数组结束时,我想回忆一下脚本以再次获取新的URL。
我的实际解决方案仅显示slide2
$(document).ready(function() {
loadPages();
});
function loadPages() {
$.getJSON("scan.php", function(data){
$.each(data, function (key, value) {
console.log(value)
setTimeout(function() {
$('.slides').load('http://axon.info/'+value);
}, 10000);
});
});
}
更新
解决了我的问题:
$(document).ready(function() {
loadPages();
});
function loadPages() {
$.getJSON("scan.php", function(data){
$.each(data, function (index, value) {
setTimeout(function() {
$('.slides').load('http://axon.info/'+value);
},(index+1) *8000);
});
});
setTimeout(loadPages, 1000);
}
我能改进的任何事情?
答案 0 :(得分:1)
循环几乎立即完成,因此您实际上同时运行多个setTimeout
使用数组index
作为延迟的乘数
$.each(data, function (index, value) {
console.log(value)
setTimeout(function() {
$('.slides').load('http://axon.info/'+value);
},(index+1) * 10000);
});