在第一个循环 jQuery 循环插件之后跳过第一张幻灯片



我正在使用幻灯片循环.js jquery插件为我的drupal网站。http://jquery.malsup.com/cycle/)我试图跳过第一张幻灯片循环一次。不确定如何做到这一点,有人可以给我提示或解决方案吗?

谢谢

也在

研究这个问题 - 使用以下代码成功

$('.slider').cycle({
  after: onAfter; 
}); 
function onAfter(curr,next,opts) {
  //if next slide is 0, then it's the first slide. switch to "1", second slide
  if(opts.nextSlide == 0 ) {opts.nextSlide = 1}; 
}

在插件中,您可以选择startingSlide这是要开始的幻灯片的索引(0 是第一个)。因此,在显示第一张幻灯片后,您可以尝试将此选项更改为1以跳过下一个周期的第一张幻灯片。

像这样的东西可能会起作用:

$('#mydiv').cycle({ 
    after: function(currSlideElement, nextSlideElement, options, forwardFlag) {
        $(this).cycle({startingSlide: 1});
    }
});
我知道

这可能不是最好的方法,但它似乎有效。

$(document).ready(function() {
    //Call the slider so that the images overlap
    $('.slideshow').cycle({
        timeout:  800,
        speed: 200
    });
    //Display the first slide for 1000ms
    setTimeout(function(){
        //Remove first slide
        $('.slideshow img:first').remove();
        //Reinit the cycle
        $('.slideshow').cycle('destroy').cycle({
            timeout:  800,
            speed: 200
        });
        }, 1000);
});

http://jsfiddle.net/Q8HK3/3/

$(window).ready(function() {
$('#slideshow').cycle({
fx: 'fade',
startingSlide: 0,
random:  1,
speed: '200', 
timeout:'2000',
delay: 5000,
next:   '#next', 
prev:   '#prev', 
slideResize: true,
containerResize: false,
width: '100%',
fit: '1',
cleartypeNoBg: 'true',
cleartype: 'true',
after: onAfter
}); 
function onAfter(curr,next,opts) {
  if(opts.nextSlide == 0 ) {opts.nextSlide = 1}; 
}
});

    $(document.documentElement).keyup(function (e) {
    if (e.keyCode == 39)
    {        
       $('#slideshow').cycle('next');
    }
    if (e.keyCode == 37)
    {
        $('#slideshow').cycle('prev');
    }
});
function MM_goToURL() { //v3.0
  var i, args=MM_goToURL.arguments; document.MM_returnValue = false;
  for (i=0; i<(args.length-1); i+=2) eval(args[i]+".location='"+args[i+1]+"'");
}

也可以通过滑块 API 从管理员执行此操作(但第 1 张幻灯片可能会闪烁一秒钟:( ):

var ended = false;
revapi1.bind("revolution.slide.onchange",function (e,data) {
    var totalSlides = revapi1.revmaxslide();
    if (data.slideIndex === totalSlides) {
       ended = true;
    }
});
revapi1.bind("revolution.slide.onbeforeswap",function (e, data) {
    if (ended && data.nextslide.index() === 0) {
      console.log("Slider: skip first slide after loop")
      revapi1.revshowslide(2); 
      ended = false;
    } 
});

相关内容

最新更新