jQuery SlidesJS - 单击导航后无法重新启动动画

时间:2013-06-19 21:40:47

标签: jquery slideshow

我正在使用新的slideJS V3.0但是在点击导航暂停后,我似乎无法重新启动幻灯片动画。我看到有人说他们让它与分页一起工作,所以我尝试使用它,但没有用。非常感谢任何帮助!

以下是我正在使用的代码(目前正试图让它在分页时工作)

<script>

$(function() {

  $('#slides').slidesjs({

    width: 905,
    height: 310,
     navigation: false,
  play: {
    auto: true,
    pauseOnHover: true,
    effect: 'fade',
    restartDelay: 1500
  },
  pagination: {
    effect: 'fade',
    play: {          
      restartDelay: 1500
    }
  },
  effect: {
    fade: {
       speed: 1500
    },       
    crossfade: true
  }

  });
});

</script>

4 个答案:

答案 0 :(得分:6)

这可以在不修改插件的情况下完成(使用SlideJS 3.0)。 只需在您的选项中添加以下完整回调:

$('#slides').slidesjs({
    callback: {
        complete: function(number) {
            var pluginInstance = $('#slides').data('plugin_slidesjs');

            setTimeout(function() {
                pluginInstance.play(true);
            }, pluginInstance.options.play.interval);
        }
    }
});

答案 1 :(得分:1)

在你的jquery.slides.js文件中搜索_this.stop(true);

显示约3-4次,下一次&amp;之前点击..你也会看到它显示为paginationLink.click

我遇到的问题是滑块在单击上一个,下一个或分页后停止滑动。我需要滑块重新启动..所以我所做的是添加一个setTimeout来播放()

_this.stop(true);

setTimeout(function ()
{ _this.play(true) }, 3000);

答案 2 :(得分:0)

我今天遇到了同样的问题。

以下是如何解决它:在jquery.sldes.js文件中转到第184行并将其更改为

return _this.goto(($(e.currentTarget).attr("data-slidesjs-item") * 1) + 1) && _this.play();

希望这适合你。

答案 3 :(得分:0)

DEMO:http://jsbin.com/cujeqekate
旧版本或新版本:

&#13;
&#13;
$(function($) {
  var interval = 4000;
  var st = 0;
  var $slides = $('#slides');
  $slides.slidesjs({
    width: 800,
    height: 450,
    play: {
      active: true,
      auto: true,
      interval: interval,
      swap: true,
      pauseOnHover: true
    },
    callback: {
      start: function(number){
        if ( $slides.find('.slidesjs-play').is(':visible')) {
          clearTimeout(st);
          st = setTimeout(function() {
             $slides.find('.slidesjs-play').click();
          }, interval);
        }
      }
    }
  });
});
&#13;
&#13;
&#13;