Cycle2 Autostop无法正常工作

时间:2014-03-10 15:40:07

标签: javascript jquery sitecore jquery-cycle2

对于最近的项目,我们正在使用Cycle2。我已升级到最新版本。 我们使用Sitecore来呈现内容。无论我采取的方法(下面),我都无法使自动停止运行。我们每张幻灯片有2-3张幻灯片,我们希望它按以下方式移动:1-2-3-1。

我们是否将其渲染为以下规则中的自动播放:

<ul class="<%# Sitecore.Context.PageMode.IsPageEditor ? String.Empty : "cycle-slideshow" %> interior" 
                data-cycle-speed="3000" 
                data-cycle-autostop="true"
                data-cycle-timeout="5000" 
                data-cycle-auto-height="container"
                data-cycle-slides="> li" >
                <sc:Placeholder  runat="server" ID="SlidePlaceholder" Key="SlidePlaceholder" /></ul>

或者如果我们在没有“cycle-slideshow”类的情况下以JS编程方式播放它:

$('#my-slideshow').cycle({
    speed: 3000,
    autostop: true,
    timeout: 5000,
    end: function() {
        $('#my-slideshow').cycle('stop');
    }
});
  • 我们正在正确加载JQuery。
  • 在做了一些事情之后,我已经尝试了'true'和'1'来自动停止 研究功能。
  • 我们也在使用Carousel和Swipe Cycle2 Libraries。
  • 我们正在同时加载以下库:fancybox 2.1.4,查询,imagesloaded jquery.ba-resize,jquery.qtip,jquery.rwdImageMaps,Slimscroll和modernizer。
  • 正常循环。我们可以基于捕获视口的更改来使其停止内联,但标准的自动停止不起作用。这是一个快速的concole日志捕获(IE,FF和Chrome之间相同)
  • [cycle2] --c2 init-- jquery.cycle2.min.js:6
  • [cycle2] speed:3000(number)jquery.cycle2.min.js:6
  • [cycle2] autostop:true(boolean)jquery.cycle2.min.js:6
  • [cycle2] timeout:5000(number)jquery.cycle2.min.js:6
  • [cycle2] autoHeight:container(string)jquery.cycle2.min.js:6
  • [cycle2]幻灯片:&gt; li(string)jquery.cycle2.min.js:6
  • 在原始HTML模式下使用静态内容
  • 演示了相同的行为
  • 此外,我通过JS Lint运行所有通过页面启动的JS。

任何帮助/建议表示赞赏。谢谢你的时间。

1 个答案:

答案 0 :(得分:5)

假设您使用的是Cycle2 plugin by Malsup,则documentation for the API不包含名为autostop的选项。也许你的意思是loop选项?

  

<强>环

     

整数
  0
  自动推进幻灯片演示的次数   应该在终止之前循环。如果该值小于1那么   幻灯片将不断循环播放。设置为1以循环一次,等等。

所以:

 <ul ... data-cycle-loop="1" .. /></ul>

var $slideshow = $('#my-slideshow');
$slideshow.cycle({
    speed: 3000,
    loop: 1,
    timeout: 5000
});

// jump back to the first slide when loop has finished
// you might have to use setTimeout() to delay the transition back to the first slide
$slideshow.on('cycle-finished', function(event, opts) {
    $slideshow.cycle('goto', 0);
});