我已经通过stackoverflow(和Google)进行了搜索,但我无法找到答案来解决我在jquery 循环中的困境。
我在一个页面上有 3 个 div(divA、divB、divC),每个都有多个图像,用于 jQuery Cycle 插件。我想要的结果是暂停 4 秒,然后第一个图像将循环(800 毫秒更改时间),然后是第二个,然后是第三个。此时,一切都会再暂停 4 秒,然后它们会再次依次变化。
这就是目标。我尝试将它们全部设置为超时并延迟启动它们,但是浏览器中的任何问题都会导致它们很容易不同步。到目前为止,我最接近的是:
$.fn.cycle.defaults.speed = 800;
$.fn.cycle.defaults.timeout = 0;
function runA() {
$('#divA').cycle({timeout: 4000,after:runB});
}
function runB() {
$('#divB').cycle('next');
}
对于前两个 div,这绝对有效,并且保持同步。但在这一点上,我不知道如何等待 divB 上的循环完成然后手动循环 divC。似乎循环插件不允许我同时调用字符串“下一个”并在选项中设置延迟。
我努力了
$('#divB').cycle('next').delay(800).siblings('#divC').cycle('next');
但 divB 和 divC 同时触发循环。我也尝试了空闲插件,但 divB 和 divC 上的循环仍然同时触发。
对此的任何帮助将不胜感激。如果之前已经在某个地方回答过这个问题,请指出我那个方向。我一直没能找到它。