我有一个幻灯片演示与真棒循环插件运行,当你点击显示按钮时,我在页面上显示一个隐藏层,并发送一个'暂停'命令来循环。我有两个问题:jQuery循环插件 - 暂停/恢复奇怪的行为
当接收到暂停命令,立即周期翻转回第一个幻灯片序列(为什么?)中,在此之前不打我的/回调之后。
关闭图层后,我发送一个'resume'命令来循环。幻灯片放映恢复(从第一张幻灯片中暂停它),但现在循环根本不会在回调之前/之后调用我,即使幻灯片播放进行中也是如此。
所以我想我的问题是:我该如何正确地暂停/恢复幻灯片,以便这些奇怪的行为不会发生? (只是要完全清楚,避免任何混淆,这不是关于“暂停悬停”功能,这实际上工作正常。:-)
这是我的循环()初始化和我的回调功能。 (为什么我手动跟踪nextSlide,你问?因为当前幻灯片内置值不会得到正确的更新前/后回调。)
$(document).ready(function() {
$('#slideshow').cycle({
fx: 'fade', // choose your transition type, ex: fade, scrollUp, shuffle, etc...
timeout: 4000, // milliseconds between slide transitions (0 to disable auto advance)
speed: 1000, // speed of the transition (any valid fx speed value)
pause: 1, // true to enable "pause on hover"
delay: 0, // additional delay (in ms) for first transition (hint: can be negative)
slideExpr: 'img', // expression for selecting slides (if something other than all children is required)
before: moveArrow, // function to call when moving to next slide
after: upd, // function to call when moving to next slide
fastOnEvent: 'fast',
});
});
var nextSlide = 0;
function upd(a, b, c) {
nextSlide = nextSlide + 1; // track which slide we're on
c = $('#slideshow img').length;
if(nextSlide > (c - 1)) nextSlide = 0; // wrap back to 1st
}
// move indicator showing which slide we're on
function moveArrow(a, b, c) {
$('#slide-indicator').attr('class', 'c'+nextSlide);
$(".clickmap").hide(); // hide other clickmaps
$(".clickmap.c"+nextSlide).show(); // show map for this slide
return true;
}
感谢您的这 - 什么想法 -
最好, 埃里克
我也有这个问题。我希望有人有答案。 – blackrobot 2010-07-20 15:27:38
我想出了一种可能适用于您的解决方法 - 但需要帮助让解决方法发挥正确。呃:-)你可以看到我的问题在这里:http://stackoverflow.com/questions/3295185/jquery-remove-function-attached-to-div – Eric 2010-07-20 23:25:21
我越来越近 - 我认为问题的一部分是Mac Firefox的一些问题。我在这里用非常简单的代码设置了一个文本页面:http://themepark.com/eric/ – Eric 2010-07-23 04:07:10