尝试每隔5秒更换一次div jquery

时间:2018-02-21 06:18:43

标签: javascript jquery

早上好,

我正在尝试创建一个类数组并且间隔为5秒,我想添加和删除替换当前div的类。这是一个旋转木马,我目前正在改变背景图像。我现在想以相同的方式使我的描述性文本交替。有人可以帮忙吗?

我在考虑检查当前背景的if语句是否可行。如果我收到此错误:'意外令牌{'

$(document).ready(function(){

/* H E A D E R   C A R O S U E L */

    $(function() {
        var headCarosuel = $(".headCarosuel");
        var backgrounds = new Array(
        "url('./img/backgroundVinny1.jpg')","url('./img/backgroundVinny2.jpg')"
        );
        var current = 0;
        function nextBackground() {
        $(".headCarosuel").css("background", backgrounds[current = ++current % backgrounds.length]);
        setTimeout(nextBackground, 5000);
        }
        setTimeout(nextBackground, 5000);
        $(".headCarosuel").css("background", backgrounds[0]);

    if(backgrounds = $("url('./img/backgroundVinny1.jpg')").css() {
        $('.headCarosuelText').removeClass('description2').addClass('description1');
    }
    else {
        $('.headCarosuelText').removeClass('description1').addClass('description2');
    }

    });
});

2 个答案:

答案 0 :(得分:1)

要在javascript中每隔5秒执行一次操作,您可以使用setInterval,例如:

setInterval(function(){
  //your code
,5000);

这将每隔5000毫秒或5秒运行一次代码。

答案 1 :(得分:1)

也许是这样的:

var classes = [
  'class1',
  'class2',
  'class3',
  'class4',
  'class5'
]

var classIndex = 0;

function loopClasses() {
  var currentClass = classes[classIndex];

  // loop through classes and remove from element
  for (var i = 0; i < classes.length; i++) {
    $('.element').removeClass(classes[i]);
  }

  // add current class to element
  $('.element').addClass(currentClass);

  // advance or reset loop counter
  classIndex = (classIndex + 1) % classes.length

}

setInterval(loopClasses, 5000);