我想建立一个jQuery Cycle幻灯片播放器,带有“当前幻灯片/总幻灯片”格式的分页,就像这里看到的那样。
我假设我将使用pageAnchorBuilder来显示当前和总幻灯片编号,然后在onAfter中更新当前幻灯片编号?
有人能帮忙吗?谢谢!
我假设我将使用pageAnchorBuilder来显示当前和总幻灯片编号,然后在onAfter中更新当前幻灯片编号?
有人能帮忙吗?谢谢!
<ol class="slides">
<li class="slide">...</li>
...
</ol>
<a id="prev"></a><span id="counter">1 / 1</span><a id="next"></a>
您可以通过调用以下方法获取幻灯片总数:
var total = $('.slides').children().length;
然后,在幻灯片更改后,我们需要更新计数器:
$('.slides').cycle({
after(el) {
const currentSlideNo = $(el).index();
$('#counter').text(currentSlideNo + ' / ' + total);
},
prev: $('#prev'),
next: $('#next'),
});
$('#counter').text(currentSlideNo+1' / '+total);
会导致意外的字符串错误。我通过使用 'onPrevNextEvent' 替代 'after' 函数,并设置 var currentSlideNo = $(slideElement).index() +1;
来解决了这个问题。 - Joe B(currentSlideNo+1+' / '+total)
当然。 - Michał Miszczyszyn.index()
不太可靠。after
回调函数会在 options
对象中获取当前的幻灯片。我认为这种方式更好。 - michelgotta after: function(currSlideElement, nextSlideElement, options, forwardFlag) {
$('#counter').text((options.currSlide + 1) + '/' + (options.slideCount));
}
这里有一个 jsfiddle 链接:http://jsfiddle.net/lucuma/Dhqdc/2/