【发布时间】:2017-03-26 16:07:21
【问题描述】:
我想以幻灯片的形式循环播放一堆 jpg 图片。到目前为止,我一直在成功使用 setInterval。但是,我现在想让每个幻灯片放映自定义时间。例如幻灯片 1 显示 6 秒,然后幻灯片 2 显示 3 秒,等等。我尝试了以下代码:
var sl = [["PodLoop1.jpg", 6000], ["PodLoop2.jpg", 3000]];
$.each(sl, function(i, value) {
fl = '<img src="media/' + value[0] + '" height="100%">'
setTimeout(function(){
$("#InnerMedia").html(fl);
if (i >= sl.length) {
window.location.href = "./media.php"; // refresh to restart from the beginning
}
}, value[1])
});
但这不起作用。它只是跳到列表中的最后一张幻灯片。我究竟做错了什么?我看过几个关于 SO 的类似问题,例如 this one,但似乎没有一个涉及可变计时器。
【问题讨论】:
标签: javascript jquery timer settimeout