我有循环播放幻灯片,幻灯片播放时会显示上一个/下一个图形。该循环还有一个垂直缩略图寻呼机。我将寻呼机包装在jCarousellite的自定义版本中,该版本在活动缩略图上放置.activeSlide类,并拥有自己的上一组/下一页链接。
总而言之,它运作良好,可以在这里看到:
http://www.spiritlevel.co.uk/cycletest/cycle_test.html
然而,我有最后一个障碍......
当点击幻灯片上的上一个/下一个图形时,我想检查新的.activeSlide是否在旋转木马中可见,如果没有,那就这样做......我真的可以帮忙。
举个例子,当你点击我上面的链接时,你会看到轮播中有8个缩略图。缩略图1处于活动状态。如果我单击幻灯片上的下一个图形,缩略图2将变为活动状态。再次单击,缩略图3变为活动状态等等。直到我点击第8次并且缩略图9变为活动状态一直很好 - 然后问题是缩略图9在轮播中不可见 - 所以在这一点上我想要一些代码激活将触发旋转木马并使缩略图9可见。 (触发轮播上的下一个链接可以在这种情况下工作)
该解决方案还需要处理页面加载和用户立即单击幻灯片上的prev图形的情况 - 显示最后一张幻灯片。触发旋转木马上的prev链接在这里不起作用 - 而是必须多次触发下一个链接才能使活动缩略图可见。
我希望我已经清楚了 - 实际上很难解释我想要发生什么,但我认为当你点击我上面的链接时会很明显 - 更容易看到而不是描述!
我真的希望最后一点工作,并希望你能给予任何帮助。
感谢
答案 0 :(得分:2)
也许 ...
// When clicking the cycle arrows
$('#slidecontrol a').click(function () {
var activeSlide = $('div.jcarousellite li.activeSlide');
// If the "activeSlide" in the jcarousel is not already visible
if (!activeSlide.is(':visible')) {
// If there are items ABOVE the active slide that are visible we need to go down
if (activeSlide.prevAll('li:visible').length) {
var clicker = $('div.nextlite').find('a');
}
// Else we need to go up
else {
var clicker = $('div.prevlite').find('a');
}
// Keep clicking untill it's visible
while (!activeSlide.is(':visible')) {
clicker.click();
}
}
});