我正在使用Cycle2(http://jquery.malsup.com/cycle2/)在网站上创建类似向导的导航。我希望在转换到下一张幻灯片之前,在点击下一个按钮时验证当前幻灯片。
我尝试触发cycle-before
事件并完成我的条件,但我不知道如何实际停止过渡。在.cycle('stop')
中触发时,cycle-before
等命令似乎不起作用 - 它会继续下一张幻灯片。
我需要在允许使用下一个按钮之前验证幻灯片中的一些输入字段。
目前的设置是:
<div id="questions" class="cycle-slideshow"
data-allow-wrap="false"
data-cycle-caption="#question-progress"
data-cycle-caption-template="Question {{slideNum}} of {{slideCount}}"
data-cycle-slides="div.question"
data-cycle-fx="scrollHorz"
data-cycle-timeout="0"
data-cycle-next="#next-question">
<div class="question"> ... </div>
<div class="question"> ... </div>
<div class="question"> ... </div>
</div>
<a id="next-question" href="#">Next question</a>
有什么想法吗?
答案 0 :(得分:1)
我这样做的方法是从幻灯片定义中删除data-cycle-next="#next-question"
,然后在Next Question
按钮上编写自己的点击处理程序。这样,在知道数据有效之前,您不会开始转换。
$('#next-question').click(function(){
//Do validation
//If valid, go to next slide
$('.cycle-slideshow').cycle('next');
});