我正在手动编写幻灯片脚本,而不是使用其他现成的包。原因是在我的幻灯片中,一些幻灯片可能是图像,一些可能是视频或一些可能是互动的。所以我自己解决这个问题。jquery手动幻灯片显示
我遇到了计时问题。我写循环scritps查询数据库获取所有的幻灯片,然后遍历并显示每个:
while(jslideNumber <= numberOfSlides){
$('.slide'+jslideNumber).delay(jslideNumber*8000).fadeIn(1000).delay(5000).fadeOut(1000).delay(2000);
jslideNumber++;
console.log("jslideNumber: "+jslideNumber)
}
的问题是,在这个例子中有5张幻灯片。上面的脚本同时显示全部5个,延迟5秒,然后同时隐藏它们全部。我究竟做错了什么?与其他幻灯片放映一样,它应该一次显示一张幻灯片,等待,隐藏,然后显示下一张幻灯片。
好的:编辑感谢下面的一位绅士,我确实有一个脚本显示了特定时间的单个图像,但控制台日志在第一张幻灯片显示之前列出了所有6个jslideNumbers。这意味着所有6个已经加载,脚本还没有开始。那么,如果有300张幻灯片呢?
我更喜欢有是
Show Slide 1
wait 30 10sec
log slide 1
show Slide 2
wait 30sec
log slide 2
...
而是什么上面确实脚本是:
Log Slide1
Log Slide2
Log Slide3 ...
Show Slide 1
Hide SLide 1
Show Slide 2
Hide Slide 2 ...
我尝试过使用setTimeout,结果是一样的。你确定延迟* 8000有意义吗? – FunnyGirl
不确定这是否正确。它确实显示了特定时间的单个图像,但是在第一个图像出现之前控制台日志正在写入所有jslideNumber。这意味着,例如在一个视频幻灯片的情况下,它会在它显示之前开始播放。我正在尝试做的是上面编辑 – FunnyGirl