0

我有这个内容滑块,我需要它像幻灯片一样,我需要自动播放

$(document).ready(function() {

$('.poveznicaDiv').click(function(){
    var broj = $(this).attr('id');
    broj = broj.split('ca');
    broj = parseInt(broj[1]);       
    $('#maskaSadrzaja').animate({'left': '-'+ 500*(broj-1) +'px'}, 'slow');
});
});

忽略他们在克罗地亚语上的 id 和类名:D

所以这很好用,但我需要自动播放

我试过这个:

slideShow();

function slideShow(){
    var i = 0;
    $('#maskaSadrzaja').animate({'left': '-'+ 500*(i) +'px'}, 'slow');
    broj++;
    // alert(i);
    if(i>5){
        i=0;
    }   
    setTimeout(slideShow, 1000);
};

但这没有用

我怎样才能让它自动播放?

编辑

所以我尝试了别的东西 .poveznicaDiv 类的 div 也有一个 id,比如 poveznica1、poveznica2 等等

所以我尝试添加一个点击它们的功能

像这样的东西:

i=1;
function autoplay() {
$('#poveznica'+i).click();
i++;
setTimeout(autoplay, 1000);
}

为什么这不起作用?我已将它放入 .ready 并调用该函数(自动播放;)。请帮忙

编辑

我的滑块(以及 html 和 css)与这个几乎相同http://www.webdeveloperjuice.com/2010/01/12/lightest-jquery-content-slider-ever-made-380-bytes/

我怎样才能让它自动旋转?

4

2 回答 2

1

您没有i在代码中递增,您还必须将其传递给函数调用,因为它不是全局变量。

var slideShow = function(i){
  $('#maskaSadrzaja').animate({
    'left': '-' + 500*(i) + 'px'
  }, 'slow');

  broj++;

  if(i>5){
    i=0;
  }   

  setTimeout(function(){
    slideShow(i+1);
  }, 1000);
};

slideShow(0);
于 2012-07-24T19:19:32.640 回答
0

把它放在 Document.Ready 中,或者简称为这样

$(function() {       
var i = 0;
$('#maskaSadrzaja').animate({'left': '-'+ 500*(i) +'px'}, 'slow');
broj++;
// alert(i);
if(i>5){
    i=0;
}   
setTimeout(slideShow, 1000);

});

于 2012-07-24T19:18:06.410 回答