如何自定义此脚本中的延迟?

时间:2013-02-12 00:05:27

标签: javascript jquery

这段代码似乎负责我网站上的图片滑块(它目前不在线)。我想自定义幻灯片之间的延迟。我尝试将最后的'5000'更改为'10000'或'900000'或其他任何东西,但它没有任何效果。我做错了什么?

function slideSwitch() {
var $active = $('#slideshow IMG.active');

if ( $active.length == 0 ) $active = $('#slideshow IMG:last');

// use this to pull the images in the order they appear in the markup
   var $next = $active.next().length ? $active.next() : $('#slideshow IMG:first');
// uncomment the 3 lines below to pull the images in random order

// var $sibs  = $active.siblings();
// var rndNum = Math.floor(Math.random() * $sibs.length );
// var $next  = $( $sibs[ rndNum ] );


    $active.addClass('last-active');

    $next.css({opacity: 0.0})
    .addClass('active')
    .animate({opacity: 1.0}, 1500, function() {
        $active.removeClass('active last-active');
    });
}

$(function() {
    setInterval( "slideSwitch()", 5000 ); 
});

2 个答案:

答案 0 :(得分:0)

我认为你会带走括号

像:

setInterval( "slideSwitch", 5000 );

试试吧

答案 1 :(得分:0)

LIVE DEMO

var $img = $('#slideshow').find('img');
var C = 0;                    // COUNTER
var N = $img.length ;         // NUMBER OF IMAGES
var intv;                     // INTERVAL

$img.hide().eq( C ).show();   // PREPARE VISIBILITIES

function slideSwitch() {
  intv = setInterval(function(){
    $img.stop().fadeTo( 500, 0 ).eq( ++C % N ).stop( 1 ).fadeTo( 500, 1 );   
  },2000);
}

slideSwitch();                // RUN


// PAUSE ON MOUSEENTER :)   
$('#slideshow').on('mouseenter mouseleave', function( e ){
  var isMEnt = e.type=='mouseenter' ? clearInterval(intv) : slideSwitch();               
});